From 96d33bc6c3df0ea0e1866563d38b7f881c3379bf Mon Sep 17 00:00:00 2001
From: SebastiÃ£o Guerra <sebastiao.luiz.guerra@gmail.com>
Date: Sat, 3 Oct 2026 17:38:11 -0300
Subject: Replace zero pointer constants with nullptr
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Signed-off-by: SebastiÃ£o Guerra <sebastiao.luiz.guerra@gmail.com>
---
 blinken/src/artsplayer.cpp                         |   4 +-
 blinken/src/blinken.cpp                            |  12 +--
 blinken/src/fontchecker.cpp                        |   2 +-
 blinken/src/highscoredialog.cpp                    |   4 +-
 kalzium/src/detailedgraphicaloverview.cpp          |   2 +-
 kalzium/src/detailedgraphicaloverview.h            |   4 +-
 kalzium/src/detailinfodlg.h                        |   2 +-
 kalzium/src/element.cpp                            |   2 +-
 kalzium/src/element.h                              |   2 +-
 kalzium/src/elementdataviewer.h                    |   2 +-
 kalzium/src/kalzium.cpp                            |  14 +--
 kalzium/src/kalziumdataobject.cpp                  |   2 +-
 kalzium/src/kalziumtip.cpp                         |   8 +-
 kalzium/src/kalziumtip.h                           |   2 +-
 kalzium/src/main.cpp                               |   6 +-
 kalzium/src/molcalcwidget.h                        |   2 +-
 kalzium/src/moleculeparser.cpp                     |   2 +-
 kalzium/src/orbitswidget.h                         |   2 +-
 kalzium/src/periodictableview.cpp                  |   4 +-
 kalzium/src/periodictableview.h                    |   2 +-
 kalzium/src/plotwidget.h                           |   2 +-
 kalzium/src/somwidget_impl.h                       |   2 +-
 kalzium/src/spectrumwidget.h                       |   2 +-
 kalzium/src/timewidget_impl.h                      |   2 +-
 kanagram/src/kanagram.cpp                          |   2 +-
 kanagram/src/keduvocdocument.cpp                   |  16 ++--
 kanagram/src/keduvockvtmlreader.cpp                |   4 +-
 kanagram/src/leitnersystem.cpp                     |   6 +-
 kanagram/src/leitnersystemview.h                   |   2 +-
 kanagram/src/main.cpp                              |   2 +-
 kanagram/src/mainsettings.cpp                      |   2 +-
 kanagram/src/vocabsettings.cpp                     |   2 +-
 kbruch/src/exercisebase.h                          |   2 +-
 kbruch/src/exercisecompare.h                       |   2 +-
 kbruch/src/exerciseconvert.h                       |   2 +-
 kbruch/src/exercisefactorize.cpp                   |  10 +--
 kbruch/src/exercisefactorize.h                     |   2 +-
 kbruch/src/kbruch.cpp                              |   4 +-
 kbruch/src/mainqtwidget.cpp                        |  10 +--
 kbruch/src/statisticsview.h                        |   2 +-
 kbruch/src/taskview.h                              |   2 +-
 kbruch/testcases/kbruch_test.cpp                   |   2 +-
 keduca/keduca/kcheckeduca.cpp                      |   8 +-
 keduca/keduca/kcheckeduca.h                        |   2 +-
 keduca/keduca/keduca.cpp                           |   4 +-
 keduca/keduca/keduca.h                             |   2 +-
 keduca/keduca/keduca_part.cpp                      |   2 +-
 keduca/keduca/keducaprefs.h                        |   2 +-
 keduca/keduca/keducaview.cpp                       |   2 +-
 keduca/keduca/keducaview.h                         |   2 +-
 keduca/keduca/kgroupeduca.cpp                      |   6 +-
 keduca/keduca/kgroupeduca.h                        |   2 +-
 keduca/keduca/kquestion.cpp                        |   2 +-
 keduca/keduca/kquestion.h                          |   2 +-
 keduca/keduca/main.cpp                             |   4 +-
 keduca/keduca/tderadioeduca.cpp                    |   8 +-
 keduca/keduca/tderadioeduca.h                      |   2 +-
 keduca/keducabuilder/kcontroladdedit.cpp           |  18 ++--
 keduca/keducabuilder/kcontroladdedit.h             |   2 +-
 keduca/keducabuilder/kcontrolheader.h              |   2 +-
 keduca/keducabuilder/keducabuilder.cpp             |   4 +-
 keduca/keducabuilder/keducabuilder.h               |   2 +-
 keduca/keducabuilder/keducaeditorstartdialog.h     |   2 +-
 keduca/keducabuilder/klangcombo.h                  |   2 +-
 keduca/keducabuilder/ktagcombobox.cpp              |   4 +-
 keduca/keducabuilder/ktagcombobox.h                |   2 +-
 keduca/keducabuilder/main.cpp                      |   4 +-
 keduca/libkeduca/fileread.cpp                      |  22 ++---
 keduca/libkeduca/fileread.h                        |   2 +-
 keduca/libkeduca/kgallerydialog.h                  |   2 +-
 kgeography/src/answersdialog.cpp                   |   2 +-
 kgeography/src/askwidget.cpp                       |   2 +-
 kgeography/src/kgeography.cpp                      |  12 +--
 kgeography/src/main.cpp                            |   4 +-
 kgeography/src/mapasker.cpp                        |   4 +-
 kgeography/src/mapchooser.cpp                      |   2 +-
 kgeography/src/popupmanager.cpp                    |   4 +-
 khangman/khangman/fontchecker.cpp                  |   2 +-
 khangman/khangman/khangman.cpp                     |   8 +-
 khangman/khangman/khangmanview.cpp                 |   4 +-
 khangman/khangman/khangmanview.h                   |   2 +-
 khangman/khangman/main.cpp                         |   4 +-
 kig/filters/cabri-filter.cpp                       |  22 ++---
 kig/filters/drgeo-filter-chooser.cpp               |   4 +-
 kig/filters/drgeo-filter.cpp                       |  50 +++++------
 kig/filters/exporter.cpp                           |   6 +-
 kig/filters/filter.cpp                             |  12 +--
 kig/filters/kgeo-filter.cpp                        |   4 +-
 kig/filters/kseg-filter.cpp                        |  30 +++----
 kig/filters/latexexporter.cpp                      |   2 +-
 kig/filters/native-filter.cpp                      |  24 ++---
 kig/filters/svgexporter.cpp                        |   2 +-
 kig/kig/aboutdata.h                                |   2 +-
 kig/kig/kig.cpp                                    |   4 +-
 kig/kig/kig_part.cpp                               |  14 +--
 kig/kig/kig_part.h                                 |   2 +-
 kig/kig/kig_view.cpp                               |   4 +-
 kig/kig/kig_view.h                                 |   8 +-
 kig/kig/main.cpp                                   |  10 +--
 kig/misc/argsparser.cpp                            |   6 +-
 kig/misc/boost_intrusive_pointer.h                 |  12 +--
 kig/misc/builtin_stuff.cpp                         |   2 +-
 kig/misc/common.cpp                                |   2 +-
 kig/misc/coordinate_system.cpp                     |   6 +-
 kig/misc/guiaction.cpp                             |   4 +-
 kig/misc/kigfiledialog.cpp                         |   2 +-
 kig/misc/kiginputdialog.cpp                        |   8 +-
 kig/misc/kigpainter.cpp                            |   2 +-
 kig/misc/lists.cpp                                 |   8 +-
 kig/misc/object_hierarchy.cpp                      |  14 +--
 kig/misc/special_constructors.cpp                  |   4 +-
 kig/modes/base_mode.cpp                            |   2 +-
 kig/modes/construct_mode.cpp                       |   4 +-
 kig/modes/label.cpp                                |  14 +--
 kig/modes/linkslabel.h                             |   2 +-
 kig/modes/macro.cpp                                |   2 +-
 kig/modes/mode.cpp                                 |   2 +-
 kig/modes/moving.cpp                               |   2 +-
 kig/modes/normal.cpp                               |   4 +-
 kig/modes/popup.cpp                                |  18 ++--
 kig/objects/line_imp.cpp                           |   2 +-
 kig/objects/object_calcer.cpp                      |   4 +-
 kig/objects/object_factory.cpp                     |  10 +--
 kig/objects/object_holder.cpp                      |   4 +-
 kig/objects/object_imp.cpp                         |   4 +-
 kig/objects/object_imp_factory.cpp                 |   6 +-
 kig/objects/object_type_factory.cpp                |   2 +-
 kig/objects/point_imp.cpp                          |   2 +-
 kig/objects/point_type.cpp                         |   4 +-
 kig/objects/polygon_imp.cpp                        |   4 +-
 kig/objects/polygon_type.cpp                       |   2 +-
 kiten/asyndeta.cpp                                 |   4 +-
 kiten/configdictionaries.h                         |   2 +-
 kiten/deinf.cpp                                    |   4 +-
 kiten/dict.cpp                                     |   6 +-
 kiten/kiten.cpp                                    |  14 +--
 kiten/kiten.h                                      |   2 +-
 kiten/kloader.cpp                                  |  14 +--
 kiten/kromajiedit.cpp                              |   4 +-
 kiten/ksaver.cpp                                   |  18 ++--
 kiten/learn.cpp                                    |   6 +-
 kiten/learn.h                                      |   2 +-
 kiten/main.cpp                                     |   2 +-
 kiten/optiondialog.cpp                             |   8 +-
 kiten/optiondialog.h                               |   2 +-
 kiten/rad.cpp                                      |   4 +-
 kiten/rad.h                                        |   2 +-
 kiten/widgets.cpp                                  |   2 +-
 kiten/widgets.h                                    |   4 +-
 klatin/klatin/klatin.cpp                           |   2 +-
 klatin/klatin/klatin.h                             |   2 +-
 klatin/klatin/klatingrammar.h                      |   2 +-
 klatin/klatin/klatinverbs.h                        |   2 +-
 klatin/klatin/klatinvocab.cpp                      |   6 +-
 klatin/klatin/klatinvocab.h                        |   2 +-
 klatin/klatin/main.cpp                             |   2 +-
 klettres/klettres/klettres.cpp                     |   6 +-
 klettres/klettres/main.cpp                         |   4 +-
 klettres/klettres/soundfactory.cpp                 |   4 +-
 kmplot/kmplot/FktDlg.cpp                           |  10 +--
 kmplot/kmplot/MainDlg.cpp                          |  32 +++----
 kmplot/kmplot/View.cpp                             |  26 +++---
 kmplot/kmplot/coordsconfigdialog.cpp               |   2 +-
 kmplot/kmplot/coordsconfigdialog.h                 |   2 +-
 kmplot/kmplot/editfunction.cpp                     |   2 +-
 kmplot/kmplot/kconstanteditor.cpp                  |   2 +-
 kmplot/kmplot/kconstanteditor.h                    |   2 +-
 kmplot/kmplot/keditconstant.h                      |   2 +-
 kmplot/kmplot/keditparametric.cpp                  |   4 +-
 kmplot/kmplot/keditpolar.cpp                       |   2 +-
 kmplot/kmplot/kminmax.cpp                          |   4 +-
 kmplot/kmplot/kminmax.h                            |   2 +-
 kmplot/kmplot/kmplot.cpp                           |   2 +-
 kmplot/kmplot/kmplotio.cpp                         |  18 ++--
 kmplot/kmplot/kmplotprogress.h                     |   2 +-
 kmplot/kmplot/kparametereditor.cpp                 |  18 ++--
 kmplot/kmplot/kparametereditor.h                   |   2 +-
 kmplot/kmplot/kprinterdlg.h                        |   2 +-
 kmplot/kmplot/ksliderwindow.cpp                    |   4 +-
 kmplot/kmplot/main.cpp                             |   4 +-
 kmplot/kmplot/parser.cpp                           |  38 ++++----
 kmplot/kmplot/xparser.cpp                          |   8 +-
 kpercentage/kpercentage/kanimation.cpp             |  14 +--
 kpercentage/kpercentage/kpercentage.cpp            |   2 +-
 kpercentage/kpercentage/kpercentage.h              |   2 +-
 kpercentage/kpercentage/kpercentmain.cpp           |   2 +-
 kpercentage/kpercentage/kpercentmain.h             |   2 +-
 kpercentage/kpercentage/ksplashscreen.cpp          |   2 +-
 kpercentage/kpercentage/main.cpp                   |   2 +-
 kstars/kstars/addcatdialog.cpp                     |   8 +-
 kstars/kstars/addcatdialog.h                       |   2 +-
 kstars/kstars/addlinkdialog.cpp                    |   2 +-
 kstars/kstars/addlinkdialog.h                      |   2 +-
 kstars/kstars/ccdpreviewwg.cpp                     |   6 +-
 kstars/kstars/ccdpreviewwg.h                       |   4 +-
 kstars/kstars/colorscheme.cpp                      |   6 +-
 kstars/kstars/conbridlg.h                          |   2 +-
 kstars/kstars/deepskyobject.cpp                    |   8 +-
 kstars/kstars/detaildialog.cpp                     |  16 ++--
 kstars/kstars/detaildialog.h                       |   6 +-
 kstars/kstars/devicemanager.cpp                    |   8 +-
 kstars/kstars/dmsbox.h                             |   4 +-
 kstars/kstars/draglistbox.h                        |   2 +-
 kstars/kstars/filesource.cpp                       |   2 +-
 kstars/kstars/finddialog.cpp                       |  12 +--
 kstars/kstars/finddialog.h                         |   2 +-
 kstars/kstars/fitshistogram.h                      |   2 +-
 kstars/kstars/fitsimage.cpp                        |  12 +--
 kstars/kstars/fitsimage.h                          |   4 +-
 kstars/kstars/fitsprocess.cpp                      |   4 +-
 kstars/kstars/fitsviewer.cpp                       |  24 ++---
 kstars/kstars/fitsviewer.h                         |   2 +-
 kstars/kstars/focusdialog.cpp                      |   6 +-
 kstars/kstars/focusdialog.h                        |   2 +-
 kstars/kstars/fovdialog.cpp                        |   6 +-
 kstars/kstars/fovdialog.h                          |   4 +-
 kstars/kstars/imagereductiondlg.cpp                |   6 +-
 kstars/kstars/imagereductiondlg.h                  |   2 +-
 kstars/kstars/imagesequence.h                      |   2 +-
 kstars/kstars/imageviewer.cpp                      |  14 +--
 kstars/kstars/imageviewer.h                        |   2 +-
 kstars/kstars/indi/apogee_ppi.cpp                  |  12 +--
 kstars/kstars/indi/celestrongps.cpp                |  30 +++----
 kstars/kstars/indi/lx200_16.cpp                    |  18 ++--
 kstars/kstars/indi/lx200autostar.cpp               |  12 +--
 kstars/kstars/indi/lx200classic.cpp                |  30 +++----
 kstars/kstars/indi/lx200generic.cpp                |  78 ++++++++--------
 kstars/kstars/indi/lx200gps.cpp                    |  44 ++++-----
 kstars/kstars/indi/sbigccd.cpp                     |  12 +--
 kstars/kstars/indidevice.cpp                       |   6 +-
 kstars/kstars/indidriver.cpp                       |  16 ++--
 kstars/kstars/indidriver.h                         |   2 +-
 kstars/kstars/indielement.cpp                      |   2 +-
 kstars/kstars/indifitsconf.h                       |   2 +-
 kstars/kstars/indimenu.cpp                         |   4 +-
 kstars/kstars/indimenu.h                           |   2 +-
 kstars/kstars/indiproperty.cpp                     |  16 ++--
 kstars/kstars/indistd.cpp                          |   2 +-
 kstars/kstars/infoboxes.cpp                        |   2 +-
 kstars/kstars/ksmoon.cpp                           |   4 +-
 kstars/kstars/ksnewstuff.cpp                       |   4 +-
 kstars/kstars/ksnewstuff.h                         |   2 +-
 kstars/kstars/ksplanet.cpp                         |   8 +-
 kstars/kstars/ksplanetbase.cpp                     |   2 +-
 kstars/kstars/ksplanetbase.h                       |   4 +-
 kstars/kstars/kspopupmenu.h                        |   4 +-
 kstars/kstars/kssun.cpp                            |   2 +-
 kstars/kstars/kstars.cpp                           |  30 +++----
 kstars/kstars/kstars.h                             |   2 +-
 kstars/kstars/kstarsactions.cpp                    |  14 +--
 kstars/kstars/kstarsdata.cpp                       |  58 ++++++------
 kstars/kstars/kstarsdcop.cpp                       |   2 +-
 kstars/kstars/kstarsinit.cpp                       |  28 +++---
 kstars/kstars/kswizard.cpp                         |   2 +-
 kstars/kstars/kswizard.h                           |   2 +-
 kstars/kstars/locationdialog.cpp                   |  14 +--
 kstars/kstars/locationdialog.h                     |   2 +-
 kstars/kstars/magnitudespinbox.h                   |   4 +-
 kstars/kstars/main.cpp                             |  20 ++---
 kstars/kstars/mapcanvas.h                          |   2 +-
 kstars/kstars/objectnamelist.cpp                   |  14 +--
 kstars/kstars/opsadvanced.h                        |   2 +-
 kstars/kstars/opscatalog.h                         |   2 +-
 kstars/kstars/opscolors.cpp                        |  10 +--
 kstars/kstars/opscolors.h                          |   2 +-
 kstars/kstars/opsguides.h                          |   2 +-
 kstars/kstars/opssolarsystem.h                     |   2 +-
 kstars/kstars/planetcatalog.cpp                    |  18 ++--
 kstars/kstars/simclock.h                           |   2 +-
 kstars/kstars/skymap.cpp                           |  12 +--
 kstars/kstars/skymap.h                             |   2 +-
 kstars/kstars/skyobject.cpp                        |  18 ++--
 kstars/kstars/skyobject.h                          |   8 +-
 kstars/kstars/skyobjectname.h                      |   2 +-
 kstars/kstars/skypoint.h                           |   2 +-
 kstars/kstars/stardatasink.h                       |   2 +-
 kstars/kstars/starobject.h                         |   2 +-
 kstars/kstars/streamwg.cpp                         |   8 +-
 kstars/kstars/streamwg.h                           |   4 +-
 kstars/kstars/telescopeprop.cpp                    |   2 +-
 kstars/kstars/telescopeprop.h                      |   2 +-
 kstars/kstars/telescopewizardprocess.cpp           |   8 +-
 kstars/kstars/telescopewizardprocess.h             |   2 +-
 kstars/kstars/thumbnaileditor.h                    |   4 +-
 kstars/kstars/thumbnailpicker.cpp                  |   2 +-
 kstars/kstars/thumbnailpicker.h                    |   2 +-
 kstars/kstars/timebox.h                            |   4 +-
 kstars/kstars/timedialog.h                         |   2 +-
 kstars/kstars/timespinbox.cpp                      |   2 +-
 kstars/kstars/timespinbox.h                        |   2 +-
 kstars/kstars/timestepbox.h                        |   2 +-
 kstars/kstars/timeunitbox.h                        |   2 +-
 kstars/kstars/toggleaction.h                       |   4 +-
 kstars/kstars/tools/altvstime.cpp                  |   6 +-
 kstars/kstars/tools/altvstime.h                    |   4 +-
 kstars/kstars/tools/astrocalc.cpp                  |   8 +-
 kstars/kstars/tools/astrocalc.h                    |   2 +-
 kstars/kstars/tools/jmoontool.h                    |   2 +-
 kstars/kstars/tools/kstarsplotwidget.h             |   2 +-
 kstars/kstars/tools/lcgenerator.cpp                |  22 ++---
 kstars/kstars/tools/lcgenerator.h                  |   2 +-
 kstars/kstars/tools/modcalcangdist.cpp             |   4 +-
 kstars/kstars/tools/modcalcapcoord.cpp             |   4 +-
 kstars/kstars/tools/modcalcazel.cpp                |   4 +-
 kstars/kstars/tools/modcalceclipticcoords.cpp      |   4 +-
 kstars/kstars/tools/modcalcequinox.cpp             |   4 +-
 kstars/kstars/tools/modcalcgalcoord.cpp            |   4 +-
 kstars/kstars/tools/modcalcgeodcoord.cpp           |   4 +-
 kstars/kstars/tools/modcalcplanets.cpp             |   6 +-
 kstars/kstars/tools/modcalcprec.cpp                |   4 +-
 kstars/kstars/tools/modcalcsidtime.cpp             |   4 +-
 kstars/kstars/tools/modcalcvlsr.cpp                |   4 +-
 kstars/kstars/tools/observinglist.cpp              |  16 ++--
 kstars/kstars/tools/observinglist.h                |   2 +-
 kstars/kstars/tools/obslistwizard.h                |   2 +-
 kstars/kstars/tools/planetviewer.cpp               |   2 +-
 kstars/kstars/tools/planetviewer.h                 |   6 +-
 kstars/kstars/tools/scriptbuilder.cpp              |  20 ++---
 kstars/kstars/tools/scriptbuilder.h                |   2 +-
 kstars/kstars/tools/wutdialog.cpp                  |  14 +--
 ktouch/src/ktouch.cpp                              |  18 ++--
 ktouch/src/ktouchchartwidget.h                     |   2 +-
 ktouch/src/ktouchcoloreditor.h                     |   2 +-
 ktouch/src/ktouchcolorscheme.cpp                   |   2 +-
 ktouch/src/ktouchkeyboardwidget.cpp                |   4 +-
 ktouch/src/ktouchlecture.cpp                       |   2 +-
 ktouch/src/ktouchlectureeditor.cpp                 |   6 +-
 ktouch/src/ktouchlectureeditor.h                   |   2 +-
 ktouch/src/ktouchopenrequest.h                     |   2 +-
 ktouch/src/ktouchstatisticsdata.cpp                |   2 +-
 ktouch/src/ktouchtrainer.cpp                       |   2 +-
 ktouch/src/main.cpp                                |   8 +-
 kturtle/src/canvas.cpp                             |   2 +-
 kturtle/src/canvas.h                               |   2 +-
 kturtle/src/dialogs.cpp                            |   6 +-
 kturtle/src/kturtle.cpp                            |  34 +++----
 kturtle/src/kturtle.h                              |   2 +-
 kturtle/src/main.cpp                               |   4 +-
 kverbos/kverbos/kerfassen.cpp                      |  12 +--
 kverbos/kverbos/kerfassen.h                        |   2 +-
 kverbos/kverbos/kresult.h                          |   2 +-
 kverbos/kverbos/kstartuplogo.h                     |   2 +-
 kverbos/kverbos/kverbedit.cpp                      |   6 +-
 kverbos/kverbos/kverbedit.h                        |   2 +-
 kverbos/kverbos/kverbos.cpp                        |  36 ++++----
 kverbos/kverbos/kverbos.h                          |   2 +-
 kverbos/kverbos/kverbosdoc.cpp                     |  16 ++--
 kverbos/kverbos/kverbosdoc.h                       |   6 +-
 kverbos/kverbos/kverbosoptions.h                   |   2 +-
 kverbos/kverbos/kverbosview.cpp                    |   2 +-
 kverbos/kverbos/kverbosview.h                      |   2 +-
 kverbos/kverbos/main.cpp                           |   6 +-
 kvoctrain/kvoctrain/common-dialogs/ProgressDlg.cpp |   4 +-
 .../kvoctrain/common-dialogs/blockoptions.cpp      |   6 +-
 kvoctrain/kvoctrain/common-dialogs/blockoptions.h  |   2 +-
 .../kvoctrain/common-dialogs/generaloptions.h      |   2 +-
 kvoctrain/kvoctrain/common-dialogs/groupoptions.h  |   2 +-
 .../kvoctrain/common-dialogs/kvoctrainprefs.cpp    |  16 ++--
 .../kvoctrain/common-dialogs/kvoctrainprefs.h      |   4 +-
 .../kvoctrain/common-dialogs/languageoptions.cpp   |   8 +-
 .../kvoctrain/common-dialogs/languageoptions.h     |   2 +-
 .../kvoctrain/common-dialogs/pasteoptions.cpp      |   2 +-
 kvoctrain/kvoctrain/common-dialogs/pasteoptions.h  |   2 +-
 .../kvoctrain/common-dialogs/profilesdialog.h      |   2 +-
 kvoctrain/kvoctrain/common-dialogs/queryoptions.h  |   2 +-
 .../kvoctrain/common-dialogs/thresholdoptions.cpp  |   6 +-
 .../kvoctrain/common-dialogs/thresholdoptions.h    |   2 +-
 kvoctrain/kvoctrain/common-dialogs/viewoptions.h   |   2 +-
 .../kvoctrain/entry-dialogs/AuxInfoEntryPage.h     |   4 +-
 kvoctrain/kvoctrain/entry-dialogs/EntryDlg.cpp     |  28 +++---
 kvoctrain/kvoctrain/entry-dialogs/EntryDlg.h       |   4 +-
 .../kvoctrain/entry-dialogs/FromToEntryPage.cpp    |   8 +-
 kvoctrain/kvoctrain/entry-dialogs/MySpinBox.cpp    |   4 +-
 kvoctrain/kvoctrain/entry-dialogs/MySpinBox.h      |   2 +-
 .../kvoctrain/entry-dialogs/PhoneticEntryPage.cpp  |   2 +-
 .../kvoctrain/entry-dialogs/PhoneticEntryPage.h    |   4 +-
 kvoctrain/kvoctrain/entry-dialogs/blockall.cpp     |   2 +-
 kvoctrain/kvoctrain/kva_clip.cpp                   |   2 +-
 kvoctrain/kvoctrain/kva_header.cpp                 |  20 ++---
 kvoctrain/kvoctrain/kva_init.cpp                   |  48 +++++-----
 kvoctrain/kvoctrain/kva_io.cpp                     |  26 +++---
 kvoctrain/kvoctrain/kva_query.cpp                  |  26 +++---
 kvoctrain/kvoctrain/kvoctrain.cpp                  |  32 +++----
 kvoctrain/kvoctrain/kvoctraintable.cpp             |  12 +--
 kvoctrain/kvoctrain/kvoctraintableitem.cpp         |   6 +-
 kvoctrain/kvoctrain/kvoctrainview.cpp              |   6 +-
 kvoctrain/kvoctrain/kvoctrainview.h                |   2 +-
 kvoctrain/kvoctrain/kvt-core/QueryManager.cpp      |  14 +--
 kvoctrain/kvoctrain/kvt-core/UsageManager.cpp      | 100 ++++++++++-----------
 kvoctrain/kvoctrain/kvt-core/kvd_csv.cpp           |   2 +-
 kvoctrain/kvoctrain/kvt-core/kvd_lex.cpp           |   2 +-
 kvoctrain/kvoctrain/kvt-core/kvd_rb_kvtml1.cpp     |   8 +-
 kvoctrain/kvoctrain/kvt-core/kvd_vcb.cpp           |   6 +-
 kvoctrain/kvoctrain/kvt-core/kvoctraindoc.cpp      |  12 +--
 kvoctrain/kvoctrain/kvtnewstuff.h                  |   2 +-
 kvoctrain/kvoctrain/main.cpp                       |   4 +-
 kvoctrain/kvoctrain/query-dialogs/AdjQueryDlg.cpp  |   6 +-
 kvoctrain/kvoctrain/query-dialogs/ArtQueryDlg.cpp  |   6 +-
 kvoctrain/kvoctrain/query-dialogs/MCQueryDlg.cpp   |   6 +-
 kvoctrain/kvoctrain/query-dialogs/QueryDlgBase.cpp |  14 +--
 kvoctrain/kvoctrain/query-dialogs/QueryDlgBase.h   |   6 +-
 .../kvoctrain/query-dialogs/RandomQueryDlg.cpp     |  12 +--
 .../kvoctrain/query-dialogs/SimpleQueryDlg.cpp     |   8 +-
 kvoctrain/kvoctrain/query-dialogs/VerbQueryDlg.cpp |   6 +-
 .../kvoctrain/statistik-dialogs/StatistikPage.cpp  |   2 +-
 kvoctrain/kvoctrain/tools/extractlang.cpp          |   4 +-
 kwordquiz/src/dlglanguage.h                        |   2 +-
 kwordquiz/src/dlgrc.h                              |   2 +-
 kwordquiz/src/dlgsort.h                            |   2 +-
 kwordquiz/src/flashview.h                          |   2 +-
 kwordquiz/src/kwordquiz.cpp                        |  90 +++++++++----------
 kwordquiz/src/kwordquiz.h                          |   4 +-
 kwordquiz/src/kwordquizdoc.cpp                     |  10 +--
 kwordquiz/src/kwordquizdoc.h                       |   4 +-
 kwordquiz/src/kwordquizprefs.cpp                   |  14 +--
 kwordquiz/src/kwordquizprefs.h                     |   2 +-
 kwordquiz/src/kwordquizview.cpp                    |  10 +--
 kwordquiz/src/kwordquizview.h                      |   2 +-
 kwordquiz/src/kwqnewstuff.h                        |   2 +-
 kwordquiz/src/main.cpp                             |  18 ++--
 kwordquiz/src/multipleview.h                       |   2 +-
 kwordquiz/src/prefcardappearance.h                 |   2 +-
 kwordquiz/src/prefcharacter.h                      |   2 +-
 kwordquiz/src/prefeditor.h                         |   2 +-
 kwordquiz/src/prefquiz.h                           |   2 +-
 kwordquiz/src/qaview.h                             |   2 +-
 kwordquiz/src/wqlreader.cpp                        |  24 ++---
 kwordquiz/src/wqprintdialogpage.h                  |   2 +-
 kwordquiz/src/wqquiz.h                             |   2 +-
 libtdeedu/extdate/extcalendarsystem.h              |   4 +-
 libtdeedu/extdate/extcalendarsystemgregorian.h     |   4 +-
 libtdeedu/extdate/extdatepicker.cpp                |  10 +--
 libtdeedu/extdate/extdatepicker.h                  |   4 +-
 libtdeedu/extdate/extdatetbl.cpp                   |   6 +-
 libtdeedu/extdate/extdatetbl.h                     |  14 +--
 libtdeedu/extdate/extdatetime.cpp                  |   2 +-
 libtdeedu/extdate/extdatetime.h                    |   2 +-
 libtdeedu/extdate/extdatetimeedit.cpp              |  22 ++---
 libtdeedu/extdate/extdatetimeedit.h                |  16 ++--
 libtdeedu/extdate/extdatewidget.h                  |   4 +-
 libtdeedu/extdate/main.cpp                         |   4 +-
 libtdeedu/tdeeduplot/kplotwidget.h                 |   2 +-
 libtdeedu/tdeeduui/tdeeduglossary.cpp              |  10 +--
 libtdeedu/tdeeduui/tdeeduglossary.h                |   4 +-
 444 files changed, 1536 insertions(+), 1536 deletions(-)

diff --git a/blinken/src/artsplayer.cpp b/blinken/src/artsplayer.cpp
index 91391e56..5878850b 100644
--- a/blinken/src/artsplayer.cpp
+++ b/blinken/src/artsplayer.cpp
@@ -20,7 +20,7 @@
 #include "artsplayer.h"
 #include "settings.h"
 
-artsPlayer::artsPlayer() : m_playobj(0)
+artsPlayer::artsPlayer() : m_playobj(nullptr)
 {
 	m_endChecker = new TQTimer(this);
 	connect(m_endChecker, TQ_SIGNAL(timeout()), this, TQ_SLOT(checkEnded()));
@@ -36,7 +36,7 @@ artsPlayer::artsPlayer() : m_playobj(0)
 	m_bluePath = locate("appdata","sounds/3.wav");
 	m_yellowPath = locate("appdata","sounds/4.wav");
 #else
-	KMessageBox::information(0, i18n("aRts was not found, therefore the sounds will be disabled."), i18n("Sounds Disabled"), "infoaboutartsnotfound");
+	KMessageBox::information(nullptr, i18n("aRts was not found, therefore the sounds will be disabled."), i18n("Sounds Disabled"), "infoaboutartsnotfound");
 #endif
 }
 
diff --git a/blinken/src/blinken.cpp b/blinken/src/blinken.cpp
index 3b97c561..97e8c835 100644
--- a/blinken/src/blinken.cpp
+++ b/blinken/src/blinken.cpp
@@ -30,7 +30,7 @@
 #include "highscoredialog.h"
 #include "settings.h"
 
-blinken::blinken() : TQWidget(0, 0, WStaticContents | WNoAutoErase), m_overHighscore(false), m_overQuit(false), m_overCentralText(false), m_overMenu(false), m_overAboutKDE(false), m_overAboutBlinken(false), m_overManual(false), m_overCentralLetters(false), m_overCounter(false), m_overFont(false), m_overSound(false), m_showPreferences(false), m_updateButtonHighlighting(false), m_highlighted(blinkenGame::none)
+blinken::blinken() : TQWidget(nullptr, nullptr, WStaticContents | WNoAutoErase), m_overHighscore(false), m_overQuit(false), m_overCentralText(false), m_overMenu(false), m_overAboutKDE(false), m_overAboutBlinken(false), m_overManual(false), m_overCentralLetters(false), m_overCounter(false), m_overFont(false), m_overSound(false), m_showPreferences(false), m_updateButtonHighlighting(false), m_highlighted(blinkenGame::none)
 {
 	m_back = new TQPixmap(locate("appdata", "images/blinken.png"));
 	
@@ -129,10 +129,10 @@ void blinken::paintEvent(TQPaintEvent *)
 	if (m_showPreferences)
 	{
 		// draw the current keys
-		drawText(p, m_buttons[0]->shortcut(), TQPoint(115, 285), true, 20, 5, 0, m_buttons[0]->selected(), false);
-		drawText(p, m_buttons[1]->shortcut(), TQPoint(115, 155), true, 20, 5, 0, m_buttons[1]->selected(), false);
-		drawText(p, m_buttons[2]->shortcut(), TQPoint(520, 155), true, 20, 5, 0, m_buttons[2]->selected(), false);
-		drawText(p, m_buttons[3]->shortcut(), TQPoint(520, 285), true, 20, 5, 0, m_buttons[3]->selected(), false);
+		drawText(p, m_buttons[0]->shortcut(), TQPoint(115, 285), true, 20, 5, nullptr, m_buttons[0]->selected(), false);
+		drawText(p, m_buttons[1]->shortcut(), TQPoint(115, 155), true, 20, 5, nullptr, m_buttons[1]->selected(), false);
+		drawText(p, m_buttons[2]->shortcut(), TQPoint(520, 155), true, 20, 5, nullptr, m_buttons[2]->selected(), false);
+		drawText(p, m_buttons[3]->shortcut(), TQPoint(520, 285), true, 20, 5, nullptr, m_buttons[3]->selected(), false);
 
 		const TQPen &oPen = p.pen();
 		const TQBrush &oBrush = p.brush();
@@ -618,7 +618,7 @@ void blinken::drawLevel(TQPainter &p)
 	n[1] = i18n("1");
 	n[2] = i18n("?");
 	
-	drawText(p, i18n("Level"), TQPoint(322, 281), false, 0, 0, 0, false, true);
+	drawText(p, i18n("Level"), TQPoint(322, 281), false, 0, 0, nullptr, false, true);
 	
 	TQPoint cp;
 	for (int i = 0; i < 3; i++)
diff --git a/blinken/src/fontchecker.cpp b/blinken/src/fontchecker.cpp
index 56bd1731..40a7caec 100644
--- a/blinken/src/fontchecker.cpp
+++ b/blinken/src/fontchecker.cpp
@@ -20,7 +20,7 @@ bool fontChecker::checkInstalled(const TQFont &font, const TQString &fontPath)
 	// Works with Steve may need some tweaking to work with other fonts
 	if (!fi.exactMatch())
 	{
-		bool success = TDEIO::NetAccess::copy(fontPath, "fonts:/Personal/", 0);
+		bool success = TDEIO::NetAccess::copy(fontPath, "fonts:/Personal/", nullptr);
 		return !success;
 	}
 	return true;
diff --git a/blinken/src/highscoredialog.cpp b/blinken/src/highscoredialog.cpp
index f3a54835..cdbb7fab 100644
--- a/blinken/src/highscoredialog.cpp
+++ b/blinken/src/highscoredialog.cpp
@@ -40,7 +40,7 @@ class scoresWidget : public TQWidget
 		const TQValueList< TQPair<int, TQString> > &m_scores;
 };
 
-scoresWidget::scoresWidget(TQWidget *parent, const TQValueList< TQPair<int, TQString> > &scores) : TQWidget(parent, 0, WStaticContents | WNoAutoErase), m_scores(scores)
+scoresWidget::scoresWidget(TQWidget *parent, const TQValueList< TQPair<int, TQString> > &scores) : TQWidget(parent, nullptr, WStaticContents | WNoAutoErase), m_scores(scores)
 {
 }
 
@@ -125,7 +125,7 @@ class myTabWidget : public TQTabWidget
 
 /* highScoreDialog */
 
-highScoreDialog::highScoreDialog(TQWidget *parent) : KDialogBase(parent, 0, true, i18n("Highscores"), KDialogBase::Close)
+highScoreDialog::highScoreDialog(TQWidget *parent) : KDialogBase(parent, nullptr, true, i18n("Highscores"), KDialogBase::Close)
 {
 	m_tw = new myTabWidget(this);
 	setMainWidget(m_tw);
diff --git a/kalzium/src/detailedgraphicaloverview.cpp b/kalzium/src/detailedgraphicaloverview.cpp
index c5312439..7ac78c40 100644
--- a/kalzium/src/detailedgraphicaloverview.cpp
+++ b/kalzium/src/detailedgraphicaloverview.cpp
@@ -37,7 +37,7 @@ DetailedGraphicalOverview::DetailedGraphicalOverview( Element *el, TQWidget *par
 DetailedGraphicalOverview::DetailedGraphicalOverview( TQWidget *parent, const char *name ) 
 : TQWidget( parent, name )
 {
-	init( 0L );
+	init( nullptr );
 }
 
 void DetailedGraphicalOverview::init( Element *el )
diff --git a/kalzium/src/detailedgraphicaloverview.h b/kalzium/src/detailedgraphicaloverview.h
index 4b616baa..9bd06aa0 100644
--- a/kalzium/src/detailedgraphicaloverview.h
+++ b/kalzium/src/detailedgraphicaloverview.h
@@ -31,8 +31,8 @@ class DetailedGraphicalOverview : public TQWidget
   
 
 	public:
-		DetailedGraphicalOverview( Element *el, TQWidget *parent, const char *name=0 );
-		DetailedGraphicalOverview( TQWidget *parent, const char *name=0 );
+		DetailedGraphicalOverview( Element *el, TQWidget *parent, const char *name=nullptr );
+		DetailedGraphicalOverview( TQWidget *parent, const char *name=nullptr );
 
 		/**
 		 * sets the elements whose data will be used to @p el
diff --git a/kalzium/src/detailinfodlg.h b/kalzium/src/detailinfodlg.h
index 8abf1d4b..ba7cbaab 100644
--- a/kalzium/src/detailinfodlg.h
+++ b/kalzium/src/detailinfodlg.h
@@ -42,7 +42,7 @@ class DetailedInfoDlg : public KDialogBase
   
 
 	public:
-		DetailedInfoDlg( Element *el , TQWidget *parent=0, const char *name=0);
+		DetailedInfoDlg( Element *el , TQWidget *parent=nullptr, const char *name=nullptr);
  
 		void setElement(Element *el);
 
diff --git a/kalzium/src/element.cpp b/kalzium/src/element.cpp
index 80a8c5b8..c622c6f5 100644
--- a/kalzium/src/element.cpp
+++ b/kalzium/src/element.cpp
@@ -54,7 +54,7 @@ Isotope* Element::isotopeByNucleons( int numberOfNucleons )
 		if ( ( ( *it )->neutrons() + ( *it )->protones() ) == numberOfNucleons )
 			return *it;
 	}
-	return 0;
+	return nullptr;
 }
 
 TQString Element::parsedOrbits( bool canBeEmpty )
diff --git a/kalzium/src/element.h b/kalzium/src/element.h
index b4cc11db..64e8dee1 100644
--- a/kalzium/src/element.h
+++ b/kalzium/src/element.h
@@ -121,7 +121,7 @@ class Element{
 		 * The ionicradius also has a name @p name. This will store the charge of
 		 * the ion (for example, +2 or -3 )
 		 */
-		void setRadius( RADIUSTYPE type, double value, const TQString& name = 0 );
+		void setRadius( RADIUSTYPE type, double value, const TQString& name = nullptr );
 		
 		void setDate( int date ) { m_date = date; }
 		void setPeriod( int period ){ m_period = period; }
diff --git a/kalzium/src/elementdataviewer.h b/kalzium/src/elementdataviewer.h
index 818976e8..d52e7985 100644
--- a/kalzium/src/elementdataviewer.h
+++ b/kalzium/src/elementdataviewer.h
@@ -99,7 +99,7 @@ class ElementDataViewer : public KDialogBase
   
 
 	public:
-		ElementDataViewer( TQWidget *parent=0 , const char *name =0 );
+		ElementDataViewer( TQWidget *parent=nullptr , const char *name =nullptr );
 
 		/**
 		 * the AxixData for the y-Axis
diff --git a/kalzium/src/kalzium.cpp b/kalzium/src/kalzium.cpp
index a1bbae10..2dfdb71f 100644
--- a/kalzium/src/kalzium.cpp
+++ b/kalzium/src/kalzium.cpp
@@ -56,7 +56,7 @@
 #define IDS_ELEMENTINFO     7
 
 Kalzium::Kalzium()
-    : TDEMainWindow( 0, "Kalzium" )
+    : TDEMainWindow( nullptr, "Kalzium" )
 {
 	// reading the elements from file
 	KalziumDataObject::instance();
@@ -71,7 +71,7 @@ Kalzium::Kalzium()
 
 	m_PerodicTableView = new PerodicTableView( helperSV->viewport(), "PerodicTableView");
 	helperSV->addChild( m_PerodicTableView );
-	m_infoDialog = 0;
+	m_infoDialog = nullptr;
 	m_toolboxCurrent = 0;
 
 	connect( m_PerodicTableView, TQ_SIGNAL( ElementClicked( int ) ), this, TQ_SLOT( openInformationDialog( int ) ));
@@ -127,7 +127,7 @@ void Kalzium::setupActions()
 	gradientlist.append(i18n("Melting Point"));
 	gradientlist.append(i18n("Electronegativity"));
 	gradientlist.append(i18n("Electron Affinity"));
-	gradient_action = new TDESelectAction(i18n("&Gradient"), 0, this, 0, actionCollection(), "view_look_gradmenu");
+	gradient_action = new TDESelectAction(i18n("&Gradient"), 0, this, nullptr, actionCollection(), "view_look_gradmenu");
 	gradient_action->setItems(gradientlist);
 	connect (gradient_action, TQ_SIGNAL(activated(int)), this, TQ_SLOT(slotSwitchtoGradient(int)));
 
@@ -137,7 +137,7 @@ void Kalzium::setupActions()
 	numlist.append(i18n("Show &IUPAC"));
 	numlist.append(i18n("Show &CAS"));
 	numlist.append(i18n("Show &Old IUPAC"));
-	numeration_action = new TDESelectAction (i18n("&Numeration"), 0, this, 0, actionCollection(), "view_numerationtype");
+	numeration_action = new TDESelectAction (i18n("&Numeration"), 0, this, nullptr, actionCollection(), "view_numerationtype");
 	numeration_action->setItems(numlist);
 	numeration_action->setCurrentItem(Prefs::numeration()); 
 	connect (numeration_action, TQ_SIGNAL(activated(int)), this, TQ_SLOT(slotSwitchtoNumeration(int)));
@@ -400,9 +400,9 @@ void Kalzium::showSettingsDialog()
 	TDEConfigDialog *dialog = new TDEConfigDialog(this,"settings", Prefs::self());
 	connect( dialog, TQ_SIGNAL( settingsChanged() ), this , TQ_SLOT( slotUpdateSettings() ) );
 	connect( dialog, TQ_SIGNAL( settingsChanged() ), m_somWidget, TQ_SLOT( reloadUnits() ) );
-	dialog->addPage( new setColors( 0, "colors_page"), i18n("Colors"), "colorize");
-	dialog->addPage( new setupUnits( 0, "units_page"), i18n("Units"), "gear");
-	dialog->addPage( new setupMisc( 0, "miscpage" ), i18n( "Miscellaneous" ), "misc" );
+	dialog->addPage( new setColors( nullptr, "colors_page"), i18n("Colors"), "colorize");
+	dialog->addPage( new setupUnits( nullptr, "units_page"), i18n("Units"), "gear");
+	dialog->addPage( new setupMisc( nullptr, "miscpage" ), i18n( "Miscellaneous" ), "misc" );
 	dialog->show();
 }
 
diff --git a/kalzium/src/kalziumdataobject.cpp b/kalzium/src/kalziumdataobject.cpp
index 8f7d6f1c..269256a1 100644
--- a/kalzium/src/kalziumdataobject.cpp
+++ b/kalzium/src/kalziumdataobject.cpp
@@ -82,7 +82,7 @@ Element* KalziumDataObject::element( int number )
 {
 	// checking that we are requesting a valid element
 	if ( ( number <= 0 ) || ( number > m_numOfElements ) )
-		return 0;
+		return nullptr;
 	return *( ElementList.at( number-1 ) );
 }
 
diff --git a/kalzium/src/kalziumtip.cpp b/kalzium/src/kalziumtip.cpp
index c15130ab..efb03731 100644
--- a/kalzium/src/kalziumtip.cpp
+++ b/kalzium/src/kalziumtip.cpp
@@ -44,7 +44,7 @@ KalziumTip::KalziumTip( TQWidget * parent, const char * name, WFlags f ) : TQWid
 	setBackgroundMode(NoBackground); // widget has no background
 	resize(0,0);
 	hide(); //initailly hide it
-	m_richText = 0;
+	m_richText = nullptr;
 	m_noElemIcon = TDEGlobal::iconLoader()->loadIcon( "orbits", TDEIcon::NoGroup, 64 );
 	setMouseTracking(true); // receice mouse move events
 	
@@ -53,7 +53,7 @@ KalziumTip::KalziumTip( TQWidget * parent, const char * name, WFlags f ) : TQWid
 
 void KalziumTip::showTip( TQPoint mouse, Element* element, int visibleWidth, int visibleHeight )
 {
-	TQWidget *p = 0;
+	TQWidget *p = nullptr;
         if ( dynamic_cast<TQWidget*>( parent() ) )
                 p = static_cast<TQWidget*>( parent() );
 
@@ -89,7 +89,7 @@ void KalziumTip::showTip( TQPoint mouse, Element* element, int visibleWidth, int
 	}
 	else
 	{
-		if ( element == 0)
+		if ( !element)
 			return;	
 	
 		m_tippedElement = element;
@@ -263,7 +263,7 @@ void KalziumTip::dissolveMask()
 void KalziumTip::hide()
 {
 	m_frameTimer.stop();
-    	m_tippedElement = 0;
+    	m_tippedElement = nullptr;
     	TQWidget::hide();
 }
 
diff --git a/kalzium/src/kalziumtip.h b/kalzium/src/kalziumtip.h
index 521bb312..9da4f6ae 100644
--- a/kalzium/src/kalziumtip.h
+++ b/kalzium/src/kalziumtip.h
@@ -45,7 +45,7 @@ class KalziumTip : public TQWidget
 	public:
 		enum MaskEffect { Plain, Dissolve };
 
-		KalziumTip( TQWidget * parent = 0, const char * name = 0, WFlags f = 0 );
+		KalziumTip( TQWidget * parent = nullptr, const char * name = nullptr, WFlags f = 0 );
 
 		void showTip( TQPoint, Element* element, int visibleWidth, int visibleHeight ); //show the tip
 		void hide(); // hide it
diff --git a/kalzium/src/main.cpp b/kalzium/src/main.cpp
index f08c5ffa..3c40dd5f 100644
--- a/kalzium/src/main.cpp
+++ b/kalzium/src/main.cpp
@@ -50,8 +50,8 @@ int main(int argc, char **argv)
 #endif
 
     TDEAboutData about("kalzium", I18N_NOOP("Kalzium"), version, description,
-                     TDEAboutData::License_GPL, "(C) 2002-2005 Carsten Niehaus", 0, "http://edu.kde.org/kalzium");
-    about.addAuthor( "Carsten Niehaus", 0, "cniehaus@kde.org" );
+                     TDEAboutData::License_GPL, "(C) 2002-2005 Carsten Niehaus", nullptr, "http://edu.kde.org/kalzium");
+    about.addAuthor( "Carsten Niehaus", nullptr, "cniehaus@kde.org" );
     about.addCredit( "Pino Toscano", I18N_NOOP("Code contributions" ));
     about.addCredit( "Martin Pfeiffer", I18N_NOOP("Tooltip, some other small things" ));
     about.addCredit( "Thomas Nagy", I18N_NOOP("Contributed EqChem, the equation solver" ));
@@ -68,7 +68,7 @@ int main(int argc, char **argv)
     TDECmdLineArgs::init(argc, argv, &about);
     TDECmdLineArgs::addCmdLineOptions( options );
     TDEApplication app;
-    Kalzium *mainWin = 0;
+    Kalzium *mainWin = nullptr;
 
     if (app.isRestored())
     {
diff --git a/kalzium/src/molcalcwidget.h b/kalzium/src/molcalcwidget.h
index 59b486cc..499e5e02 100644
--- a/kalzium/src/molcalcwidget.h
+++ b/kalzium/src/molcalcwidget.h
@@ -48,7 +48,7 @@ class MolcalcWidget : public MolcalcWidgetBase
 		 * @param parent parent widget
 		 * @param name name of this widget
 		 */
-		MolcalcWidget( TQWidget *parent = 0, const char *name = 0 );
+		MolcalcWidget( TQWidget *parent = nullptr, const char *name = nullptr );
 
 	protected slots:
 		void slotCalcButtonClicked();
diff --git a/kalzium/src/moleculeparser.cpp b/kalzium/src/moleculeparser.cpp
index bb4a24c0..36eeb014 100644
--- a/kalzium/src/moleculeparser.cpp
+++ b/kalzium/src/moleculeparser.cpp
@@ -47,7 +47,7 @@ ElementCountMap::search(Element *_element)
 			return *it;
 	}
 
-	return 0;
+	return nullptr;
 }
 
 
diff --git a/kalzium/src/orbitswidget.h b/kalzium/src/orbitswidget.h
index 0e7eb36b..7d30e9c7 100644
--- a/kalzium/src/orbitswidget.h
+++ b/kalzium/src/orbitswidget.h
@@ -32,7 +32,7 @@ class OrbitsWidget : public TQWidget
   
 
 	public:
-		OrbitsWidget( TQWidget *parent=0 , const char *name =0 );
+		OrbitsWidget( TQWidget *parent=nullptr , const char *name =nullptr );
 
 		void setElementNumber( const int num );
 
diff --git a/kalzium/src/periodictableview.cpp b/kalzium/src/periodictableview.cpp
index 4218c3a2..b45516cb 100644
--- a/kalzium/src/periodictableview.cpp
+++ b/kalzium/src/periodictableview.cpp
@@ -42,7 +42,7 @@
 #include <tqrect.h>
 
 PerodicTableView::PerodicTableView(TQWidget *parent, const char *name)
-  : TQWidget(parent, name), m_kalziumTip(0), table(0), table2(0)
+  : TQWidget(parent, name), m_kalziumTip(nullptr), table(nullptr), table2(nullptr)
 {
 	d = KalziumDataObject::instance();
 
@@ -170,7 +170,7 @@ void PerodicTableView::slotToolTip( int number )
 
 	m_tooltipElementNumber = number;
 
-	TQWidget *p = 0;
+	TQWidget *p = nullptr;
 	if ( dynamic_cast<TQWidget*>( parent() ) )
 		p = static_cast<TQWidget*>( parent() );
 
diff --git a/kalzium/src/periodictableview.h b/kalzium/src/periodictableview.h
index 5bbb909f..45f267a4 100644
--- a/kalzium/src/periodictableview.h
+++ b/kalzium/src/periodictableview.h
@@ -49,7 +49,7 @@ class PerodicTableView : public TQWidget
 		 * @param parent parent widget
 		 * @param name name of this widget
 		 */
-		PerodicTableView( TQWidget *parent = 0, const char *name = 0);
+		PerodicTableView( TQWidget *parent = nullptr, const char *name = nullptr);
 		~PerodicTableView();
 
 		enum SCHEMETYPE
diff --git a/kalzium/src/plotwidget.h b/kalzium/src/plotwidget.h
index edf3bb26..8f370680 100644
--- a/kalzium/src/plotwidget.h
+++ b/kalzium/src/plotwidget.h
@@ -27,7 +27,7 @@ class PlotWidget : public KPlotWidget
   
 
 	public:
-		PlotWidget( double x1 = 0.0, double x2 = 0.0, double y1 = 0.0, double y2 = 0.0, TQWidget *parent=0 , const char *name =0 );
+		PlotWidget( double x1 = 0.0, double x2 = 0.0, double y1 = 0.0, double y2 = 0.0, TQWidget *parent=nullptr , const char *name =nullptr );
 
 		/**
 		 * toggles if the points will be connected with 
diff --git a/kalzium/src/somwidget_impl.h b/kalzium/src/somwidget_impl.h
index 62f7070f..48df27e1 100644
--- a/kalzium/src/somwidget_impl.h
+++ b/kalzium/src/somwidget_impl.h
@@ -36,7 +36,7 @@ class SOMWidgetIMPL : public SOMWidget
 		 * @param parent The parent of this widget
 		 * @param name The name of this widget
 		 */
-		SOMWidgetIMPL( TQWidget *parent = 0, const char* name = 0 );
+		SOMWidgetIMPL( TQWidget *parent = nullptr, const char* name = nullptr );
 
 	public slots:
 		/**
diff --git a/kalzium/src/spectrumwidget.h b/kalzium/src/spectrumwidget.h
index 57b66f10..9de41475 100644
--- a/kalzium/src/spectrumwidget.h
+++ b/kalzium/src/spectrumwidget.h
@@ -37,7 +37,7 @@ class SpectrumWidget : public TQWidget
   
 
 	public:
-		SpectrumWidget( TQWidget *parent, const char* name = 0 );
+		SpectrumWidget( TQWidget *parent, const char* name = nullptr );
 		
 		~SpectrumWidget(){}
 
diff --git a/kalzium/src/timewidget_impl.h b/kalzium/src/timewidget_impl.h
index 99627c07..4afbc0cd 100644
--- a/kalzium/src/timewidget_impl.h
+++ b/kalzium/src/timewidget_impl.h
@@ -29,7 +29,7 @@ class TimeWidgetIMPL : public TimeWidget
 		 * @param parent The parent of this widget
 		 * @param name The name of this widget
 		 */
-		TimeWidgetIMPL( TQWidget *parent = 0, const char* name = 0 );
+		TimeWidgetIMPL( TQWidget *parent = nullptr, const char* name = nullptr );
 
 	public slots:
 		/**
diff --git a/kanagram/src/kanagram.cpp b/kanagram/src/kanagram.cpp
index 38cf5cca..0f375b84 100644
--- a/kanagram/src/kanagram.cpp
+++ b/kanagram/src/kanagram.cpp
@@ -55,7 +55,7 @@ using namespace std;
 static const char* m_textRevealWord = I18N_NOOP("reveal word");
 static const char* m_textHint = I18N_NOOP("hint");
 
-Kanagram::Kanagram() : TQWidget(0, 0, WStaticContents | WNoAutoErase), m_overNext(false), m_overConfig(false), m_overHelp(false), m_overQuit(false), m_overReveal(false), m_overHint(false), m_overUp(false), m_overHintBox(false), m_showHint(false)
+Kanagram::Kanagram() : TQWidget(nullptr, nullptr, WStaticContents | WNoAutoErase), m_overNext(false), m_overConfig(false), m_overHelp(false), m_overQuit(false), m_overReveal(false), m_overHint(false), m_overUp(false), m_overHintBox(false), m_showHint(false)
 {
 	m_game = new KanagramGame(this);
 
diff --git a/kanagram/src/keduvocdocument.cpp b/kanagram/src/keduvocdocument.cpp
index 7f8c04c0..6ce32fde 100644
--- a/kanagram/src/keduvocdocument.cpp
+++ b/kanagram/src/keduvocdocument.cpp
@@ -89,7 +89,7 @@ void KEduVocDocument::Init ()
   author = "";
 
   activeLeitnerSystem = false;
-  leitnerSystem = 0;
+  leitnerSystem = nullptr;
 }
 
 
@@ -102,12 +102,12 @@ bool KEduVocDocument::open(const KURL& url, bool /*append*/)
   // TODO EPT  connect( this, TQ_SIGNAL(progressChanged(KEduVocDocument*,int)), parent, TQ_SLOT(slotProgress(KEduVocDocument*,int)) );
 
   TQString tmpfile;
-  if (TDEIO::NetAccess::download( url, tmpfile, 0 ))
+  if (TDEIO::NetAccess::download( url, tmpfile, nullptr ))
   {
     TQFile f(tmpfile);
     if (!f.open(IO_ReadOnly))
     {
-      KMessageBox::error(0, i18n("<qt>Cannot open file<br><b>%1</b></qt>").arg(url.path()));
+      KMessageBox::error(nullptr, i18n("<qt>Cannot open file<br><b>%1</b></qt>").arg(url.path()));
       return false;
     }
 
@@ -164,7 +164,7 @@ bool KEduVocDocument::open(const KURL& url, bool /*append*/)
         // the two messages should be merged
         TQString format = i18n("Could not load \"%1\"\nDo you want to try again?");
         TQString msg = format.arg(url.path());
-        int result = KMessageBox::warningContinueCancel(0, msg,
+        int result = KMessageBox::warningContinueCancel(nullptr, msg,
                                                         tdeApp->makeStdCaption(i18n("I/O Failure")),
                                                         i18n("&Retry"));
         if ( result == KMessageBox::Cancel ) {
@@ -211,7 +211,7 @@ bool KEduVocDocument::saveAs(TQObject * /*parent*/, const KURL & url, FileType f
 
     if (!f.open(IO_WriteOnly))
     {
-      KMessageBox::error(0, i18n("<qt>Cannot write to file<br><b>%1</b></qt>").arg(tmp.path()));
+      KMessageBox::error(nullptr, i18n("<qt>Cannot write to file<br><b>%1</b></qt>").arg(tmp.path()));
       return false;
     }
 
@@ -254,7 +254,7 @@ bool KEduVocDocument::saveAs(TQObject * /*parent*/, const KURL & url, FileType f
       // the two messages should be merged
       TQString format = i18n("Could not save \"%1\"\nDo you want to try again?");
       TQString msg = format.arg(tmp.path());
-      int result = KMessageBox::warningContinueCancel(0, msg,
+      int result = KMessageBox::warningContinueCancel(nullptr, msg,
                                                       tdeApp->makeStdCaption(i18n("I/O Failure")),
                                                       i18n("&Retry"));
       if ( result == KMessageBox::Cancel ) return false;
@@ -270,7 +270,7 @@ bool KEduVocDocument::saveAs(TQObject * /*parent*/, const KURL & url, FileType f
 KEduVocExpression *KEduVocDocument::getEntry(int index)
 {
   if (index < 0 || index >= (int)vocabulary.size() )
-    return 0;
+    return nullptr;
   else
     return &vocabulary[index];
 }
@@ -674,7 +674,7 @@ void KEduVocDocument::setLeitnerSystemActive( bool yes )
 {
 	if( yes )
 	{
-		if( leitnerSystem == 0 )
+		if(!leitnerSystem)
 			createStandardLeitnerSystem(); //if nothing is loaded yet
 
 		activeLeitnerSystem = true;
diff --git a/kanagram/src/keduvockvtmlreader.cpp b/kanagram/src/keduvockvtmlreader.cpp
index ed0939bf..0010500b 100644
--- a/kanagram/src/keduvockvtmlreader.cpp
+++ b/kanagram/src/keduvockvtmlreader.cpp
@@ -1679,7 +1679,7 @@ void KEduVocKvtmlReader::domErrorUnknownElement(const TQString &elem)
   TQString msg = format.arg(elem);
   TQApplication::setOverrideCursor( arrowCursor, true );
   TQString s = tdeApp->makeStdCaption(i18n("Unknown Element"));
-  KMessageBox::sorry(0, ln+msg, s);
+  KMessageBox::sorry(nullptr, ln+msg, s);
   TQApplication::restoreOverrideCursor();
 }
 
@@ -1689,7 +1689,7 @@ void KEduVocKvtmlReader::domError(const TQString &text )
   TQString s = tdeApp->makeStdCaption(i18n("Error"));
   TQString ln = i18n("File:\t%1\n").arg(m_doc->URL().path());
   TQString msg = text;
-  KMessageBox::error(0, ln+msg, s);
+  KMessageBox::error(nullptr, ln+msg, s);
   TQApplication::restoreOverrideCursor();
 }
 
diff --git a/kanagram/src/leitnersystem.cpp b/kanagram/src/leitnersystem.cpp
index 2ee407e5..0958fdff 100644
--- a/kanagram/src/leitnersystem.cpp
+++ b/kanagram/src/leitnersystem.cpp
@@ -63,7 +63,7 @@ LeitnerBox* LeitnerSystem::getBoxWithName( const TQString& name )
 			return &(*it);
 	}
 
-	return 0;
+	return nullptr;
 }
 
 TQString& LeitnerSystem::getSystemName()
@@ -140,7 +140,7 @@ int LeitnerSystem::getNumber( LeitnerBox* box )
 
 bool LeitnerSystem::setBoxName( int box, const TQString& name )
 {
-	if( getBoxWithName( name ) == 0 || getBoxWithName( name ) == getBoxWithNumber( box ) )
+	if( getBoxWithName( name ) == nullptr || getBoxWithName( name ) == getBoxWithNumber( box ) )
 	{
 		getBoxWithNumber( box )->setBoxName( name );
 		
@@ -152,7 +152,7 @@ bool LeitnerSystem::setBoxName( int box, const TQString& name )
 
 bool LeitnerSystem::setBoxName( LeitnerBox* box, const TQString& name )
 {
-	if( getBoxWithName( name ) == 0 || getBoxWithName( name ) == box )
+	if( getBoxWithName( name ) == nullptr || getBoxWithName( name ) == box )
 	{
 		box->setBoxName( name );
 		
diff --git a/kanagram/src/leitnersystemview.h b/kanagram/src/leitnersystemview.h
index 88cca85e..e3347122 100644
--- a/kanagram/src/leitnersystemview.h
+++ b/kanagram/src/leitnersystemview.h
@@ -28,7 +28,7 @@ class LeitnerSystemView : public TQScrollView
   
 		
 public:
-    LeitnerSystemView(TQWidget* parent = 0, const char* name = 0, WFlags f = 0);
+    LeitnerSystemView(TQWidget* parent = nullptr, const char* name = nullptr, WFlags f = 0);
 
     ~LeitnerSystemView();
 
diff --git a/kanagram/src/main.cpp b/kanagram/src/main.cpp
index 416ff515..ea293856 100644
--- a/kanagram/src/main.cpp
+++ b/kanagram/src/main.cpp
@@ -32,7 +32,7 @@ int main(int argc, char *argv[])
 	TDEAboutData about("kanagram", I18N_NOOP("Kanagram"), "0.1", I18N_NOOP("An anagram game"), TDEAboutData::License_GPL, "Â© 2005 Joshua Keel\nÂ© 2005 Danny Allen");
 	about.addAuthor("Joshua Keel", I18N_NOOP("Coding"), "joshuakeel@gmail.com");
 	about.addAuthor("Danny Allen", I18N_NOOP("Design, Graphics and many Vocabularies"), "danny@dannyallen.co.uk");
-	about.addCredit("Artemiy Pavlov", I18N_NOOP("Sound effects"), 0, "http://artemiolabs.com");
+	about.addCredit("Artemiy Pavlov", I18N_NOOP("Sound effects"), nullptr, "http://artemiolabs.com");
 	TDECmdLineArgs::init(argc, argv, &about);
 	TDEApplication app;
 	app.connect(&app, TQ_SIGNAL(lastWindowClosed()), &app, TQ_SLOT(quit()));
diff --git a/kanagram/src/mainsettings.cpp b/kanagram/src/mainsettings.cpp
index a712cd35..c69ccfd0 100644
--- a/kanagram/src/mainsettings.cpp
+++ b/kanagram/src/mainsettings.cpp
@@ -135,7 +135,7 @@ void MainSettings::setupTranslations()
 
 void MainSettings::getAndInstallFont()
 {
-	bool success = TDEIO::NetAccess::copy("http://www.kde-edu.org/kanagram/chalk.ttf", "fonts:/Personal/", 0);
+	bool success = TDEIO::NetAccess::copy("http://www.kde-edu.org/kanagram/chalk.ttf", "fonts:/Personal/", nullptr);
 	if (success)
 	{
 		getFontsButton->hide();
diff --git a/kanagram/src/vocabsettings.cpp b/kanagram/src/vocabsettings.cpp
index 9834847c..030707d1 100644
--- a/kanagram/src/vocabsettings.cpp
+++ b/kanagram/src/vocabsettings.cpp
@@ -39,7 +39,7 @@ void VocabSettings::refreshView()
 	{
 		KEduVocDocument *doc = new KEduVocDocument(this);
 		doc->open(KURL(m_fileList[i]), false);
-		TQListViewItem *item = new TQListViewItem(lviewVocab, 0);
+		TQListViewItem *item = new TQListViewItem(lviewVocab, nullptr);
 		item->setText( 0, doc->getTitle() );
 		item->setText( 1, doc->getDocRemark() );
 		m_itemMap[item] = i;
diff --git a/kbruch/src/exercisebase.h b/kbruch/src/exercisebase.h
index 224622a5..1b064ae8 100644
--- a/kbruch/src/exercisebase.h
+++ b/kbruch/src/exercisebase.h
@@ -40,7 +40,7 @@ class ExerciseBase : public TQWidget
 
 public:
 	/** constructor */
-	ExerciseBase(TQWidget * parent = 0, const char * name = 0);
+	ExerciseBase(TQWidget * parent = nullptr, const char * name = nullptr);
 
 	/** destructor */
 	~ExerciseBase();
diff --git a/kbruch/src/exercisecompare.h b/kbruch/src/exercisecompare.h
index a282721d..b7f7fc71 100644
--- a/kbruch/src/exercisecompare.h
+++ b/kbruch/src/exercisecompare.h
@@ -49,7 +49,7 @@ class ExerciseCompare : public ExerciseBase
 
 public:
 	/** constructor */
-	ExerciseCompare(TQWidget * parent = 0, const char * name = 0);
+	ExerciseCompare(TQWidget * parent = nullptr, const char * name = nullptr);
 
 	/** destructor */
 	~ExerciseCompare();
diff --git a/kbruch/src/exerciseconvert.h b/kbruch/src/exerciseconvert.h
index 7bca7962..c48479e1 100644
--- a/kbruch/src/exerciseconvert.h
+++ b/kbruch/src/exerciseconvert.h
@@ -47,7 +47,7 @@ class ExerciseConvert : public ExerciseBase
 
 public:
 	/** constructor */
-	ExerciseConvert(TQWidget * parent = 0, const char * name = 0);
+	ExerciseConvert(TQWidget * parent = nullptr, const char * name = nullptr);
 
 	/** destructor */
 	~ExerciseConvert();
diff --git a/kbruch/src/exercisefactorize.cpp b/kbruch/src/exercisefactorize.cpp
index 8eb43a9a..1ecd4d95 100644
--- a/kbruch/src/exercisefactorize.cpp
+++ b/kbruch/src/exercisefactorize.cpp
@@ -64,7 +64,7 @@ ExerciseFactorize::ExerciseFactorize(TQWidget * parent, const char * name):
 
 	Form1Layout = new TQVBoxLayout( this, 11, 6, "Form1Layout"); 
 
-	layout9 = new TQVBoxLayout( 0, 0, 6, "layout9"); 
+	layout9 = new TQVBoxLayout( nullptr, 0, 6, "layout9"); 
 	
 	// The following method fix the problem in
 	// bug  #116831, reverse order in RTL desktops.
@@ -75,7 +75,7 @@ ExerciseFactorize::ExerciseFactorize(TQWidget * parent, const char * name):
 	spacer2 = new TQSpacerItem( 20, 21, TQSizePolicy::Minimum, TQSizePolicy::Expanding );
 	layout9->addItem( spacer2 );
 	
-	layout2 = new TQVBoxLayout( 0, 0, 6, "layout2"); 
+	layout2 = new TQVBoxLayout( nullptr, 0, 6, "layout2"); 
 	
 	// The following method fix the problem in
 	// bug  #116831, reverse order in RTL desktops.
@@ -90,7 +90,7 @@ ExerciseFactorize::ExerciseFactorize(TQWidget * parent, const char * name):
 	spacer4 = new TQSpacerItem( 20, 21, TQSizePolicy::Minimum, TQSizePolicy::Expanding );
 	layout9->addItem( spacer4 );
 	
-	layout7 = new TQHBoxLayout( 0, 0, 6, "layout7"); 
+	layout7 = new TQHBoxLayout( nullptr, 0, 6, "layout7"); 
 	spacer3 = new TQSpacerItem( 361, 20, TQSizePolicy::Expanding, TQSizePolicy::Minimum );
 	layout7->addItem( spacer3 );
 	
@@ -237,7 +237,7 @@ void ExerciseFactorize::update()
 TQHBoxLayout* ExerciseFactorize::createFactorsLayout()
 {
   // first create all widgets
-  TQHBoxLayout* layout = new TQHBoxLayout( 0, 0, 6, "layout4"); 
+  TQHBoxLayout* layout = new TQHBoxLayout( nullptr, 0, 6, "layout4"); 
   
   m_taskLabel = new TQLabel( this, "m_taskLabel" );
 
@@ -297,7 +297,7 @@ TQGridLayout* ExerciseFactorize::createButtonsLayout()
   const int _COLS = 4; // number of buttons in each row
   const int _ROWS = 2; // number of rows
 
-  TQGridLayout* layout = new TQGridLayout( 0, 1, 1, 0, 6, "layout1"); 
+  TQGridLayout* layout = new TQGridLayout( nullptr, 1, 1, 0, 6, "layout1"); 
 	
   // first row buttons
   m_factor2Button = new TQPushButton( this, "m_factor2Button" );
diff --git a/kbruch/src/exercisefactorize.h b/kbruch/src/exercisefactorize.h
index 14c9ac8e..478ed37d 100644
--- a/kbruch/src/exercisefactorize.h
+++ b/kbruch/src/exercisefactorize.h
@@ -64,7 +64,7 @@ class ExerciseFactorize : public ExerciseBase
 
 public:
 	/** constructor */
-	ExerciseFactorize(TQWidget * parent = 0, const char * name = 0);
+	ExerciseFactorize(TQWidget * parent = nullptr, const char * name = nullptr);
 
 	/** destructor */
 	~ExerciseFactorize();
diff --git a/kbruch/src/kbruch.cpp b/kbruch/src/kbruch.cpp
index a2d7c916..3a2d07ab 100644
--- a/kbruch/src/kbruch.cpp
+++ b/kbruch/src/kbruch.cpp
@@ -41,9 +41,9 @@ int main(int argc, char * argv[])
 		KBRUCH_VERSION,
 		I18N_NOOP("Learn calculating with fractions"),
 		TDEAboutData::License_GPL,
-    	"(c) 2002-2005, Sebastian Stein", 0, "http://edu.kde.org/kbruch/",
+    	"(c) 2002-2005, Sebastian Stein", nullptr, "http://edu.kde.org/kbruch/",
 		"seb.kde@hpfsc.de");
-	aboutData.addAuthor("Sebastian Stein",0, "seb.kde@hpfsc.de");
+	aboutData.addAuthor("Sebastian Stein",nullptr, "seb.kde@hpfsc.de");
  	TDECmdLineArgs::init( argc, argv, &aboutData );
 
 	TDEApplication kbruch;
diff --git a/kbruch/src/mainqtwidget.cpp b/kbruch/src/mainqtwidget.cpp
index ace772f5..f750fadb 100644
--- a/kbruch/src/mainqtwidget.cpp
+++ b/kbruch/src/mainqtwidget.cpp
@@ -58,7 +58,7 @@ MainQtWidget::MainQtWidget()
 	// creating TDEActions, used by the kbruchui.rc file
 	setupActions();
 
-	createGUI(0L);
+	createGUI(nullptr);
 
 	// we split the main view into 2 parts, one for the tasks, one for the
 	// statistics
@@ -161,7 +161,7 @@ void MainQtWidget::setupActions()
 	KStdAction::preferences(this,  TQ_SLOT( slotPrefs() ), actionCollection());
 
 	// a label just describing the Number of terms ComboBox
-	m_NrOfTermsLabel = new TQLabel(i18n("Terms:"), 0, "tde toolbar widget");
+	m_NrOfTermsLabel = new TQLabel(i18n("Terms:"), nullptr, "tde toolbar widget");
 	m_NrOfTermsLabelAction = new KWidgetAction(m_NrOfTermsLabel, i18n("Terms:"), ALT+Key_E,
 						   this, TQ_SLOT(NrOfTermsBoxSlot()),
 						   actionCollection(), "NrOfTermsLabelAction");
@@ -181,7 +181,7 @@ void MainQtWidget::setupActions()
 	TQObject::connect(m_NrOfTermsBox, TQ_SIGNAL(activated(int)), this, TQ_SLOT(NrOfTermsBoxSlot()));
 
 	// a label just describing the max. main denominator ComboBox
-	m_MaxMainDenominatorLabel = new TQLabel(i18n("Max. main denominator:"), 0, "tde toolbar widget");
+	m_MaxMainDenominatorLabel = new TQLabel(i18n("Max. main denominator:"), nullptr, "tde toolbar widget");
 	m_MaxMainDenominatorLabelAction = new KWidgetAction(m_MaxMainDenominatorLabel, i18n("Max. main denominator:"), ALT+Key_D,
 							    this, TQ_SLOT(MaxMainDenominatorBoxSlot()),
 							    actionCollection(), "MaxMainDenominatorLabelAction");
@@ -212,7 +212,7 @@ void MainQtWidget::setupActions()
 			 this, TQ_SLOT(MaxMainDenominatorBoxSlot()));
 
 	// a label just describing the operation ComboBox
-	m_OperationLabel = new TQLabel(i18n("Operations:"), 0, "tde toolbar widget");
+	m_OperationLabel = new TQLabel(i18n("Operations:"), nullptr, "tde toolbar widget");
 	m_OperationLabelAction = new KWidgetAction(m_OperationLabel, i18n("Operations:"), ALT+Key_O,
 						   this, TQ_SLOT(OperationBoxSlot()),
 						   actionCollection(), "OperationLabelAction");
@@ -417,7 +417,7 @@ void MainQtWidget::slotPrefs()
 	TDEConfigDialog* configDialog = new TDEConfigDialog( this, "settings", SettingsClass::self() );
 
 	
-	TaskViewerOptionsBase * taskViewerOptions = new TaskViewerOptionsBase(0, "TaskViewerOptionsBase");
+	TaskViewerOptionsBase * taskViewerOptions = new TaskViewerOptionsBase(nullptr, "TaskViewerOptionsBase");
 	configDialog->addPage(taskViewerOptions, i18n("Task Viewer Settings"), "colorize");
 
 	// User edited the configuration - update your local copies of the 
diff --git a/kbruch/src/statisticsview.h b/kbruch/src/statisticsview.h
index 7156496b..8834fd25 100644
--- a/kbruch/src/statisticsview.h
+++ b/kbruch/src/statisticsview.h
@@ -41,7 +41,7 @@ class StatisticsView : public TQWidget
 
 public:
 	/** constructor */
-	StatisticsView(TQWidget * parent = 0, const char * name = 0);
+	StatisticsView(TQWidget * parent = nullptr, const char * name = nullptr);
 
 	/** destructor */
 	~StatisticsView();
diff --git a/kbruch/src/taskview.h b/kbruch/src/taskview.h
index 882eb61f..b19ca99a 100644
--- a/kbruch/src/taskview.h
+++ b/kbruch/src/taskview.h
@@ -55,7 +55,7 @@ class TaskView : public ExerciseBase
 
 public:
 	/** constructor */
-	TaskView(TQWidget * parent = 0, const char * name = 0,
+	TaskView(TQWidget * parent = nullptr, const char * name = nullptr,
 	         bool padd_sub = true, bool pmul_div = false,
 	         unsigned int pnr_ratios = 2, unsigned int pmax_md = 10);
 
diff --git a/kbruch/testcases/kbruch_test.cpp b/kbruch/testcases/kbruch_test.cpp
index a98496eb..db4b6f2a 100644
--- a/kbruch/testcases/kbruch_test.cpp
+++ b/kbruch/testcases/kbruch_test.cpp
@@ -34,5 +34,5 @@ test_suite* init_unit_test_suite(int /* argc */, char** /* argv */)
 	top_test_suite->add(new ratio_test_suite());
 
 	framework::master_test_suite().add( top_test_suite );
-	return 0;
+	return nullptr;
 }
diff --git a/keduca/keduca/kcheckeduca.cpp b/keduca/keduca/kcheckeduca.cpp
index 6274de73..187065b3 100644
--- a/keduca/keduca/kcheckeduca.cpp
+++ b/keduca/keduca/kcheckeduca.cpp
@@ -23,7 +23,7 @@
 
 KCheckEduca::KCheckEduca(TQWidget *parent, const char *name ) : TQCheckBox(parent,name)
 {
-    _doc = 0;
+    _doc = nullptr;
     TDEAcceleratorManager::setNoAccel( this );
 }
 
@@ -38,7 +38,7 @@ void KCheckEduca::drawButtonLabel( TQPainter *p){
     int extra_width, indicator_width;
 
     extra_width = 8;
-    indicator_width = style().pixelMetric(TQStyle::PM_IndicatorWidth, 0);
+    indicator_width = style().pixelMetric(TQStyle::PM_IndicatorWidth, nullptr);
 
     y = 0;
     x = indicator_width + extra_width; //###
@@ -63,9 +63,9 @@ void KCheckEduca::drawButtonLabel( TQPainter *p){
     if ( !isEnabled() ) {
         TQColorGroup cg = colorGroup();
         cg.setColor( TQColorGroup::Text, cg.light() );
-        _doc->draw(p, cr.x()+xo+1, cr.y()+yo+1, cr, cg, 0);
+        _doc->draw(p, cr.x()+xo+1, cr.y()+yo+1, cr, cg, nullptr);
     }
-    _doc->draw(p, cr.x()+xo, cr.y()+yo, cr, colorGroup(), 0);
+    _doc->draw(p, cr.x()+xo, cr.y()+yo, cr, colorGroup(), nullptr);
 
     if ( hasFocus() ) {
 //	TQRect br = style().itemRect( p, x, y, rw, rh+yo,
diff --git a/keduca/keduca/kcheckeduca.h b/keduca/keduca/kcheckeduca.h
index 88f3a3ca..1a6e5089 100644
--- a/keduca/keduca/kcheckeduca.h
+++ b/keduca/keduca/kcheckeduca.h
@@ -31,7 +31,7 @@ class KCheckEduca : public TQCheckBox  {
   
 
 public:
-    KCheckEduca(TQWidget *parent=0, const char *name=0);
+    KCheckEduca(TQWidget *parent=nullptr, const char *name=nullptr);
     ~KCheckEduca();
 
 protected:
diff --git a/keduca/keduca/keduca.cpp b/keduca/keduca/keduca.cpp
index d410abd9..93af3b28 100644
--- a/keduca/keduca/keduca.cpp
+++ b/keduca/keduca/keduca.cpp
@@ -31,7 +31,7 @@
 #include <tqlabel.h>
 
 Keduca::Keduca( TQWidget* parent, const char *name, WFlags f )
-	: KParts::MainWindow( parent, name, f ), _part( 0 )
+	: KParts::MainWindow( parent, name, f ), _part( nullptr )
 {
 	setXMLFile( "keducaui.rc" );
 	
@@ -64,7 +64,7 @@ Keduca::~Keduca()
 void Keduca::setupActions()
 {
 	KStdAction::open( this, TQ_SLOT( slotFileOpen() ), actionCollection() );
-	(void)new TDEAction(  i18n( "Open &Gallery..." ), 0, 0, this, TQ_SLOT( slotGallery() ),
+	(void)new TDEAction(  i18n( "Open &Gallery..." ), nullptr, 0, this, TQ_SLOT( slotGallery() ),
 actionCollection(), "open_gallery" );
 	_recentFiles = KStdAction::openRecent(this, TQ_SLOT ( slotFileOpenURL(const KURL &) ),
 actionCollection());
diff --git a/keduca/keduca/keduca.h b/keduca/keduca/keduca.h
index e296c201..82983be0 100644
--- a/keduca/keduca/keduca.h
+++ b/keduca/keduca/keduca.h
@@ -38,7 +38,7 @@ class Keduca : public KParts::MainWindow
 
 public:
     /** construtor */
-    Keduca(TQWidget* parent=0, const char *name=0, WFlags f = WType_TopLevel | WDestructiveClose);
+    Keduca(TQWidget* parent=nullptr, const char *name=nullptr, WFlags f = WType_TopLevel | WDestructiveClose);
     /** destructor */
     ~Keduca();
   /** Open gallery window */
diff --git a/keduca/keduca/keduca_part.cpp b/keduca/keduca/keduca_part.cpp
index 333c02d5..e7725030 100644
--- a/keduca/keduca/keduca_part.cpp
+++ b/keduca/keduca/keduca_part.cpp
@@ -80,7 +80,7 @@ void KEducaPart::slotConfigure()
 		return;
 		
 	TDEConfigDialog *dialog = new TDEConfigDialog( widget(), "KEducaSettings", Settings::self() );
-	ConfigDialogBase *confDlg = new ConfigDialogBase( 0, "ConfigDialogBase" );
+	ConfigDialogBase *confDlg = new ConfigDialogBase( nullptr, "ConfigDialogBase" );
 	dialog->addPage( confDlg, i18n("General"), "keduca" );
 	
 	connect( dialog, TQ_SIGNAL( settingsChanged() ), TQ_SLOT( updateConfiguration() ) );
diff --git a/keduca/keduca/keducaprefs.h b/keduca/keduca/keducaprefs.h
index 94feebff..d2459a99 100644
--- a/keduca/keduca/keducaprefs.h
+++ b/keduca/keduca/keducaprefs.h
@@ -32,7 +32,7 @@ class KEducaPrefs : public KDialogBase  {
   
 
 public:
-    KEducaPrefs(TQWidget *parent=0, const char *name=0, bool modal=true);
+    KEducaPrefs(TQWidget *parent=nullptr, const char *name=nullptr, bool modal=true);
     ~KEducaPrefs();
 
 private:
diff --git a/keduca/keduca/keducaview.cpp b/keduca/keduca/keducaview.cpp
index 3a3657c6..b062d35c 100644
--- a/keduca/keduca/keducaview.cpp
+++ b/keduca/keduca/keducaview.cpp
@@ -38,7 +38,7 @@
 #include <tqtextedit.h>
 
 KEducaView::KEducaView( TQWidget *parent, const char *name )
-    : TQWidgetStack( parent, name ), _keducaFile( 0 ), _timeoutTimer( 0 )
+    : TQWidgetStack( parent, name ), _keducaFile( nullptr ), _timeoutTimer( nullptr )
 {
     init();
 }
diff --git a/keduca/keduca/keducaview.h b/keduca/keduca/keducaview.h
index 9e31ff70..8d5e8003 100644
--- a/keduca/keduca/keducaview.h
+++ b/keduca/keduca/keducaview.h
@@ -46,7 +46,7 @@ class KEducaView : public TQWidgetStack
   
 
 public:
-    KEducaView(TQWidget *parent=0, const char *name=0);
+    KEducaView(TQWidget *parent=nullptr, const char *name=nullptr);
     ~KEducaView();
     /** Open url */
     bool openURL( const KURL &url);
diff --git a/keduca/keduca/kgroupeduca.cpp b/keduca/keduca/kgroupeduca.cpp
index a6637ef6..3668e4fc 100644
--- a/keduca/keduca/kgroupeduca.cpp
+++ b/keduca/keduca/kgroupeduca.cpp
@@ -43,7 +43,7 @@ KGroupEduca::~KGroupEduca(){
 /** Insert a check or radio button */
 void KGroupEduca::insertAnswer( const TQString& text)
 {
-    TQButton *answer = 0;
+    TQButton *answer = nullptr;
 
     switch( _typeMode )
     {
@@ -88,13 +88,13 @@ bool KGroupEduca::isChecked(int id)
     case Radio:
     {
         TDERadioEduca *tmpRadioButton = (TDERadioEduca*) find(id);
-        if(tmpRadioButton != 0) return tmpRadioButton->isChecked();
+        if(tmpRadioButton) return tmpRadioButton->isChecked();
     }
     break;
     case Check:
     {
         KCheckEduca *tmpCheckButton = (KCheckEduca*) find(id);
-        if(tmpCheckButton != 0) return tmpCheckButton->isChecked();
+        if(tmpCheckButton) return tmpCheckButton->isChecked();
     }
     break;
     }
diff --git a/keduca/keduca/kgroupeduca.h b/keduca/keduca/kgroupeduca.h
index c90830ec..200d9d81 100644
--- a/keduca/keduca/kgroupeduca.h
+++ b/keduca/keduca/kgroupeduca.h
@@ -32,7 +32,7 @@ class KGroupEduca : public TQVButtonGroup  {
 public:
     enum ButtonType { Radio, Check };
 
-    KGroupEduca(TQWidget *parent=0, const char *name=0);
+    KGroupEduca(TQWidget *parent=nullptr, const char *name=nullptr);
     ~KGroupEduca();
     /** Insert a check or radio button */
     void insertAnswer( const TQString& text);
diff --git a/keduca/keduca/kquestion.cpp b/keduca/keduca/kquestion.cpp
index aa5ff7f4..cdd816fc 100644
--- a/keduca/keduca/kquestion.cpp
+++ b/keduca/keduca/kquestion.cpp
@@ -28,7 +28,7 @@
 #include <tdelocale.h>
 
 KQuestion::KQuestion( TQWidget *parent, const char *name )
-  : TQHBox( parent, name ), _countdownTimer( 0 )
+  : TQHBox( parent, name ), _countdownTimer( nullptr )
 {
   initGUI();
 }
diff --git a/keduca/keduca/kquestion.h b/keduca/keduca/kquestion.h
index d7f9e8bb..46c1044e 100644
--- a/keduca/keduca/kquestion.h
+++ b/keduca/keduca/kquestion.h
@@ -36,7 +36,7 @@ class KQuestion : public TQHBox
   
 
 public:
-    KQuestion(TQWidget *parent=0, const char *name=0);
+    KQuestion(TQWidget *parent=nullptr, const char *name=nullptr);
     ~KQuestion();
     /** Set pixmap */
     void setPixmap( const TQPixmap pixmap);
diff --git a/keduca/keduca/main.cpp b/keduca/keduca/main.cpp
index 2df69031..5d2754c4 100644
--- a/keduca/keduca/main.cpp
+++ b/keduca/keduca/main.cpp
@@ -27,7 +27,7 @@ static const char version[]     = "1.3";
 
 static TDECmdLineOptions options[] =
 {
-    { "+file",          I18N_NOOP("File to load"), 0 },
+    { "+file",          I18N_NOOP("File to load"), nullptr },
     TDECmdLineLastOption
 };
 
@@ -35,7 +35,7 @@ int main(int argc, char *argv[])
 {
     TDEAboutData aboutData( "keduca", I18N_NOOP("KEduca"),
                           version, description, TDEAboutData::License_GPL,
-                          "(c) 2001, Javier Campos", 0, "http://keduca.sourceforge.net", "submit@bugs.trinitydesktop.org");
+                          "(c) 2001, Javier Campos", nullptr, "http://keduca.sourceforge.net", "submit@bugs.trinitydesktop.org");
     aboutData.addAuthor("Javier Campos",I18N_NOOP( "Original Author" ), "javi@asyris.org");
     aboutData.addAuthor("Klas Kalass",I18N_NOOP( "Maintainer 2002-2004" ), "klas@kde.org");
     aboutData.addAuthor("Henrique Pinto",I18N_NOOP( "Current Maintainer" ), "henrique.pinto@kdemail.net");
diff --git a/keduca/keduca/tderadioeduca.cpp b/keduca/keduca/tderadioeduca.cpp
index 080b46d0..a1c2666d 100644
--- a/keduca/keduca/tderadioeduca.cpp
+++ b/keduca/keduca/tderadioeduca.cpp
@@ -22,7 +22,7 @@
 
 TDERadioEduca::TDERadioEduca(TQWidget *parent, const char *name) : TQRadioButton(parent,name)
 {
-    _doc=0;
+    _doc=nullptr;
     TDEAcceleratorManager::setNoAccel(this);
 }
 
@@ -37,7 +37,7 @@ void TDERadioEduca::drawButtonLabel( TQPainter *p)
     int x, y, w, h;
     int extra_width, indicator_width;
     extra_width = 8;
-    indicator_width = style().pixelMetric(TQStyle::PM_ExclusiveIndicatorWidth, 0);
+    indicator_width = style().pixelMetric(TQStyle::PM_ExclusiveIndicatorWidth, nullptr);
 
     y = 0;
     x = indicator_width + extra_width; //###
@@ -62,9 +62,9 @@ void TDERadioEduca::drawButtonLabel( TQPainter *p)
     if (!isEnabled() ) {
         TQColorGroup cg = colorGroup();
         cg.setColor( TQColorGroup::Text, cg.light() );
-        _doc->draw(p, cr.x()+xo+1, cr.y()+yo+1, cr, cg, 0);
+        _doc->draw(p, cr.x()+xo+1, cr.y()+yo+1, cr, cg, nullptr);
     }
-    _doc->draw(p, cr.x()+xo, cr.y()+yo, cr, colorGroup(), 0);
+    _doc->draw(p, cr.x()+xo, cr.y()+yo, cr, colorGroup(), nullptr);
 
     if ( hasFocus() ) {
 //	TQRect br = style().itemRect( p, x, y, rw, rh+yo,
diff --git a/keduca/keduca/tderadioeduca.h b/keduca/keduca/tderadioeduca.h
index 73049b36..0e3d1f94 100644
--- a/keduca/keduca/tderadioeduca.h
+++ b/keduca/keduca/tderadioeduca.h
@@ -30,7 +30,7 @@ class TDERadioEduca : public TQRadioButton {
   
 
 public:
-    TDERadioEduca(TQWidget *parent=0, const char *name=0);
+    TDERadioEduca(TQWidget *parent=nullptr, const char *name=nullptr);
     ~TDERadioEduca();
 
 protected:
diff --git a/keduca/keducabuilder/kcontroladdedit.cpp b/keduca/keducabuilder/kcontroladdedit.cpp
index 190c561a..34292400 100644
--- a/keduca/keducabuilder/kcontroladdedit.cpp
+++ b/keduca/keducabuilder/kcontroladdedit.cpp
@@ -33,7 +33,7 @@
 
 KControlAddEdit::KControlAddEdit(TQWidget *parent, const char *name, bool modal, WFlags f)
     : KControlAddEditBase(parent, name, modal, f),
-      _currentAnswerItem(0)
+      _currentAnswerItem(nullptr)
 {
     configRead();
 }
@@ -45,7 +45,7 @@ KControlAddEdit::~KControlAddEdit()
 /** Init _keducaFile pointer and EditMode */
 void KControlAddEdit::init(FileRead *keducaFile, bool edit)
 {
-    setCurrentAnswerItem(0);
+    setCurrentAnswerItem(nullptr);
     _keducaFile = keducaFile;
     _editMode = edit;
 
@@ -133,7 +133,7 @@ void KControlAddEdit::resetAnswerValues()
     _answerValue->setCurrentItem( 0 );
     _answerPoints->setValue(0);
     _answerText->setFocus();
-    setCurrentAnswerItem(0);
+    setCurrentAnswerItem(nullptr);
     _buttonUp->setEnabled(false);
     _buttonDown->setEnabled(false);
     _buttonRemove->setEnabled(false);
@@ -155,8 +155,8 @@ void KControlAddEdit::slotMoveUpAnswer()
     if (item && item->itemAbove())
         item->itemAbove()->moveItem(item);
 
-    _buttonUp->setEnabled(item->itemAbove()!=0);
-    _buttonDown->setEnabled(item->itemBelow()!=0);
+    _buttonUp->setEnabled(item->itemAbove()!=nullptr);
+    _buttonDown->setEnabled(item->itemBelow()!=nullptr);
 }
 
 /** Button Down */
@@ -167,8 +167,8 @@ void KControlAddEdit::slotMoveDownAnswer()
     if (item)
         item->moveItem(item->itemBelow());
 
-    _buttonUp->setEnabled(item->itemAbove()!=0);
-    _buttonDown->setEnabled(item->itemBelow()!=0);
+    _buttonUp->setEnabled(item->itemAbove()!=nullptr);
+    _buttonDown->setEnabled(item->itemBelow()!=nullptr);
 }
 
 void KControlAddEdit::slotAnswerSelected(TQListViewItem *item)
@@ -186,8 +186,8 @@ void KControlAddEdit::slotAnswerSelected(TQListViewItem *item)
     // enable/disable the buttons as appropriate
     _buttonRemove->setEnabled(true);
     _buttonInsert->setEnabled(true);
-    _buttonDown->setEnabled(item->itemBelow()!=0);
-    _buttonUp->setEnabled(item->itemAbove()!=0);
+    _buttonDown->setEnabled(item->itemBelow()!=nullptr);
+    _buttonUp->setEnabled(item->itemAbove()!=nullptr);
 }
 
 /** Accept changes */
diff --git a/keduca/keducabuilder/kcontroladdedit.h b/keduca/keducabuilder/kcontroladdedit.h
index acf5c884..a945977e 100644
--- a/keduca/keducabuilder/kcontroladdedit.h
+++ b/keduca/keducabuilder/kcontroladdedit.h
@@ -38,7 +38,7 @@ class KControlAddEdit : public KControlAddEditBase  {
   
 
 public:
-    KControlAddEdit(TQWidget *parent = 0, const char *name = 0, bool modal = true, WFlags f = 0);
+    KControlAddEdit(TQWidget *parent = nullptr, const char *name = nullptr, bool modal = true, WFlags f = 0);
     ~KControlAddEdit();
     /** Init keducaFile pointer and EditMode */
     void init(FileRead *keducaFile, bool editMode);
diff --git a/keduca/keducabuilder/kcontrolheader.h b/keduca/keducabuilder/kcontrolheader.h
index 2e060bcc..9ed8d80e 100644
--- a/keduca/keducabuilder/kcontrolheader.h
+++ b/keduca/keducabuilder/kcontrolheader.h
@@ -36,7 +36,7 @@ class KControlHeader : public KDialogBase  {
   
 
 public:
-    KControlHeader(FileRead *keducaFile, TQWidget *parent=0, const char *name=0);
+    KControlHeader(FileRead *keducaFile, TQWidget *parent=nullptr, const char *name=nullptr);
     ~KControlHeader();
 
 private:
diff --git a/keduca/keducabuilder/keducabuilder.cpp b/keduca/keducabuilder/keducabuilder.cpp
index d7d1edf4..91e721a7 100644
--- a/keduca/keducabuilder/keducabuilder.cpp
+++ b/keduca/keducabuilder/keducabuilder.cpp
@@ -113,7 +113,7 @@ void KEducaBuilder::initMenuBar()
 {
     KStdAction::openNew(this, TQ_SLOT( slotFileOpenNew() ), actionCollection());
     KStdAction::open   (this, TQ_SLOT( slotFileOpen() ), actionCollection());
-    (void)new TDEAction(i18n("Open &Gallery..."), 0, 0, this, TQ_SLOT( slotGallery() ), actionCollection(), "open_gallery");
+    (void)new TDEAction(i18n("Open &Gallery..."), nullptr, 0, this, TQ_SLOT( slotGallery() ), actionCollection(), "open_gallery");
     _recentFiles = KStdAction::openRecent(this, TQ_SLOT ( slotFileOpenURL(const KURL &)), actionCollection());
     KStdAction::save   (this, TQ_SLOT( slotFileSave() ), actionCollection());
     KStdAction::saveAs (this, TQ_SLOT( slotFileSaveAs() ), actionCollection());
@@ -406,7 +406,7 @@ bool KEducaBuilder::fileSaveAs()
 {
     if( !checkSave() ) return false;
 
-    TQCheckBox *saveCompressedCheckBox = new TQCheckBox( i18n( "Compress the file" ), 0 );
+    TQCheckBox *saveCompressedCheckBox = new TQCheckBox( i18n( "Compress the file" ), nullptr );
     saveCompressedCheckBox->setChecked( true );
 
     KFileDialog *dialog=new KFileDialog(TQString(), TQString(), this, "file dialog", true, saveCompressedCheckBox);
diff --git a/keduca/keducabuilder/keducabuilder.h b/keduca/keducabuilder/keducabuilder.h
index 3957ff4c..a2d0a8b3 100644
--- a/keduca/keducabuilder/keducabuilder.h
+++ b/keduca/keducabuilder/keducabuilder.h
@@ -39,7 +39,7 @@ class KEducaBuilder : public TDEMainWindow  {
   
 
 public:
-    KEducaBuilder(TQWidget* parent=0, const char *name=0, WFlags f = WType_TopLevel | WDestructiveClose);
+    KEducaBuilder(TQWidget* parent=nullptr, const char *name=nullptr, WFlags f = WType_TopLevel | WDestructiveClose);
     ~KEducaBuilder();
     /** start a dialog that asks the user what he wants to do to start*/
     bool startChooser();
diff --git a/keduca/keducabuilder/keducaeditorstartdialog.h b/keduca/keducabuilder/keducaeditorstartdialog.h
index cce39e44..0a76f913 100644
--- a/keduca/keducabuilder/keducaeditorstartdialog.h
+++ b/keduca/keducabuilder/keducaeditorstartdialog.h
@@ -36,7 +36,7 @@ public:
     enum {Rejected=0, OpenDoc=1, OpenRecentDoc=2, Gallery=3, NewDoc=4}StartChoice;
     /** Constructor.
      */
-    KEducaEditorStartDialog(KEducaBuilder * parent = 0, const char* name = 0, bool modal = false, WFlags fl = 0 );
+    KEducaEditorStartDialog(KEducaBuilder * parent = nullptr, const char* name = nullptr, bool modal = false, WFlags fl = 0 );
     /** Destructor.
      */
     virtual ~KEducaEditorStartDialog();
diff --git a/keduca/keducabuilder/klangcombo.h b/keduca/keducabuilder/klangcombo.h
index 49d98bce..11168d02 100644
--- a/keduca/keducabuilder/klangcombo.h
+++ b/keduca/keducabuilder/klangcombo.h
@@ -38,7 +38,7 @@ class KLanguageCombo : public KTagComboBox
   
 
 public:
-    KLanguageCombo(TQWidget *parent=0, const char *name=0);
+    KLanguageCombo(TQWidget *parent=nullptr, const char *name=nullptr);
     ~KLanguageCombo();
 
     void insertLanguage(const TQString& path, const TQString& name, const TQString& sub = TQString(), const TQString &submenu = TQString());
diff --git a/keduca/keducabuilder/ktagcombobox.cpp b/keduca/keducabuilder/ktagcombobox.cpp
index 905c7698..18eb3e78 100644
--- a/keduca/keducabuilder/ktagcombobox.cpp
+++ b/keduca/keducabuilder/ktagcombobox.cpp
@@ -107,11 +107,11 @@ static inline TQPopupMenu *checkInsertIndex(TQPopupMenu *popup, const TQStringLi
 {
     int pos = tags->findIndex(submenu);
 
-    TQPopupMenu *pi = 0;
+    TQPopupMenu *pi = nullptr;
     if (pos != -1)
     {
         TQMenuItem *p = popup->findItem(popup->idAt(pos));
-        pi = p?p->popup():0;
+        pi = p?p->popup():nullptr;
     }
     if (!pi) pi = popup;
 
diff --git a/keduca/keducabuilder/ktagcombobox.h b/keduca/keducabuilder/ktagcombobox.h
index 923cd659..fbdc1b4f 100644
--- a/keduca/keducabuilder/ktagcombobox.h
+++ b/keduca/keducabuilder/ktagcombobox.h
@@ -42,7 +42,7 @@ class KTagComboBox : public TQComboBox
   
 
 public:
-    KTagComboBox(TQWidget *parent=0, const char *name=0);
+    KTagComboBox(TQWidget *parent=nullptr, const char *name=nullptr);
     ~KTagComboBox();
 
     void insertItem(const TQIconSet& icon, const TQString &text, const TQString &tag, const TQString &submenu = TQString(), int index=-1 );
diff --git a/keduca/keducabuilder/main.cpp b/keduca/keducabuilder/main.cpp
index 256577d1..24358208 100644
--- a/keduca/keducabuilder/main.cpp
+++ b/keduca/keducabuilder/main.cpp
@@ -28,7 +28,7 @@ static const char version[]     = "1.2.0";
 
 static TDECmdLineOptions options[] =
 {
-    { "+file",          I18N_NOOP("File to load"), 0 },
+    { "+file",          I18N_NOOP("File to load"), nullptr },
     TDECmdLineLastOption
 };
 
@@ -36,7 +36,7 @@ int main(int argc, char *argv[])
 {
     TDEAboutData aboutData( "keduca", I18N_NOOP("KEducaBuilder"),
                           version, description, TDEAboutData::License_GPL,
-                          "(c) 2001, Javier Campos", 0, "http://keduca.sourceforge.net", "submit@bugs.trinitydesktop.org");
+                          "(c) 2001, Javier Campos", nullptr, "http://keduca.sourceforge.net", "submit@bugs.trinitydesktop.org");
     aboutData.addAuthor("Javier Campos",I18N_NOOP("Original Author"), "javi@asyris.org");
     aboutData.addAuthor("Klas Kalass",I18N_NOOP("Maintainer 2002-2004"), "klas@kde.org");
     aboutData.addAuthor("Anne-Marie Mahfouf",I18N_NOOP("Various fixes and cleanups"), "annma@kde.org");
diff --git a/keduca/libkeduca/fileread.cpp b/keduca/libkeduca/fileread.cpp
index 30fa1701..81d42f0d 100644
--- a/keduca/libkeduca/fileread.cpp
+++ b/keduca/libkeduca/fileread.cpp
@@ -32,7 +32,7 @@
 FileRead::FileRead( TQObject *parent, const char *name )
     :TQObject(parent, name),
      _changed(false),
-     _tmpfile(0)
+     _tmpfile(nullptr)
 {
 }
 
@@ -43,7 +43,7 @@ FileRead::~FileRead()
 bool FileRead::openFile(const KURL &url) {
     TQString tmpFile;
     bool returnval=false;
-    if( TDEIO::NetAccess::download( url, tmpFile, 0 ) )
+    if( TDEIO::NetAccess::download( url, tmpFile, nullptr ) )
     {
         returnval=loadFile( tmpFile );
         if (returnval) {
@@ -584,7 +584,7 @@ TQPixmap FileRead::getPicturePixmap()
   KURL picture ( getPicture() );
   TQPixmap pict;
     
-  if( TDEIO::NetAccess::download( picture, _tmpfileImage, 0 ) )
+  if( TDEIO::NetAccess::download( picture, _tmpfileImage, nullptr ) )
   {
     kdDebug()<<"... load successful: "<< _tmpfileImage <<endl;
     pict = TQPixmap( _tmpfileImage );
@@ -647,11 +647,11 @@ bool FileRead::saveFile( const KURL &url, bool copyimages, bool saveCompressed )
     // Local file
     if ( _currentURL.isLocalFile() )
     {
-        if ( _tmpfile != 0 ) // get rid of a possible temp file first
+        if (_tmpfile) // get rid of a possible temp file first
         {              // (happens if previous _currentURL was remote)
              _tmpfile->unlink();
              delete _tmpfile;
-             _tmpfile = 0;
+             _tmpfile = nullptr;
         }
         if( saveFile(_currentURL.path(), copyimages, saveCompressed) ) {
             emit completed();
@@ -662,7 +662,7 @@ bool FileRead::saveFile( const KURL &url, bool copyimages, bool saveCompressed )
     else
     { // Remote file
         // We haven't saved yet, or we did but locally - provide a temp file
-        if ( _tmpfile == 0 )
+        if (!_tmpfile)
         {
              _tmpfile = new KTempFile;
         }
@@ -824,11 +824,11 @@ bool FileRead::saveResults( const KURL &url, const TQString &results )
     // Local file
     if ( _currentURL.isLocalFile() )
     {
-        if ( _tmpfile != 0 ) // get rid of a possible temp file first
+        if (_tmpfile) // get rid of a possible temp file first
         {              // (happens if previous _currentURL was remote)
              _tmpfile->unlink();
              delete _tmpfile;
-             _tmpfile = 0;
+             _tmpfile = nullptr;
         }
         if( saveResults(_currentURL.path(), results) ) {
             emit completed();
@@ -839,7 +839,7 @@ bool FileRead::saveResults( const KURL &url, const TQString &results )
     else
     { // Remote file
         // We haven't saved yet, or we did but locally - provide a temp file
-        if ( _tmpfile == 0 )
+        if (!_tmpfile)
         {
              _tmpfile = new KTempFile;
         }
@@ -942,11 +942,11 @@ void FileRead::slotUploadFinished( TDEIO::Job * job )
   }
   else
   {
-    if ( _tmpfile!=0 ) // We're finished with this document -> remove temp file
+    if (_tmpfile) // We're finished with this document -> remove temp file
     {
        _tmpfile->unlink();
        delete _tmpfile;
-       _tmpfile=0;
+       _tmpfile=nullptr;
     }
     emit setWindowCaption( _currentURL.prettyURL() );
     emit completed();
diff --git a/keduca/libkeduca/fileread.h b/keduca/libkeduca/fileread.h
index ed9d54a2..02adbf94 100644
--- a/keduca/libkeduca/fileread.h
+++ b/keduca/libkeduca/fileread.h
@@ -37,7 +37,7 @@ class FileRead : public TQObject {
   
 
 public:
-    FileRead( TQObject *parent=0, const char *name=0 );
+    FileRead( TQObject *parent=nullptr, const char *name=nullptr );
     virtual ~FileRead();
     enum QuestionField { TQF_TEXT, TQF_PICTURE, TQF_POINTS, TQF_TYPE, TQF_TIME, TQF_TIP, TQF_EXPLAIN };
     enum AnswerField { AF_TEXT, AF_VALUE, AF_POINT };
diff --git a/keduca/libkeduca/kgallerydialog.h b/keduca/libkeduca/kgallerydialog.h
index 1712a61c..e6dd7089 100644
--- a/keduca/libkeduca/kgallerydialog.h
+++ b/keduca/libkeduca/kgallerydialog.h
@@ -37,7 +37,7 @@ class KGalleryDialog : public KGalleryDialogBase  {
    TQ_OBJECT
   
 public: 
-	KGalleryDialog(TQWidget *parent=0, const char *name=0);
+	KGalleryDialog(TQWidget *parent=nullptr, const char *name=nullptr);
 	~KGalleryDialog();
   /** Open keduca file. This function can open a remote or local url. */
   bool openFile( const KURL &url );
diff --git a/kgeography/src/answersdialog.cpp b/kgeography/src/answersdialog.cpp
index 64d72ba5..8ace7139 100644
--- a/kgeography/src/answersdialog.cpp
+++ b/kgeography/src/answersdialog.cpp
@@ -17,7 +17,7 @@
 #include "answer.h"
 #include "answersdialog.h"
 
-answersDialog::answersDialog(TQWidget *parent, const TQValueVector<userAnswer> &userAnswers, TQString question, int correctAnswers) : KDialogBase(parent, 0, true, i18n("Your Answers Were"), Ok)
+answersDialog::answersDialog(TQWidget *parent, const TQValueVector<userAnswer> &userAnswers, TQString question, int correctAnswers) : KDialogBase(parent, nullptr, true, i18n("Your Answers Were"), Ok)
 {
 	TQLabel *l1, *l2, *l3;
 	TQFont boldFont, bigFont;
diff --git a/kgeography/src/askwidget.cpp b/kgeography/src/askwidget.cpp
index ca92ed8b..089bc2a1 100644
--- a/kgeography/src/askwidget.cpp
+++ b/kgeography/src/askwidget.cpp
@@ -25,7 +25,7 @@ askWidget::askWidget(TQWidget *parent, KGmap *m, TQWidget *w, uint count, bool s
 		resetAnswers();
 		p_answers -> show();
 	}
-	else p_answers = 0;
+	else p_answers = nullptr;
 }
 
 askWidget::~askWidget()
diff --git a/kgeography/src/kgeography.cpp b/kgeography/src/kgeography.cpp
index d3279726..66d37f9c 100644
--- a/kgeography/src/kgeography.cpp
+++ b/kgeography/src/kgeography.cpp
@@ -38,8 +38,8 @@
 
 kgeography::kgeography() : TDEMainWindow(), p_firstShow(true), p_mustShowResultsDialog(false)
 {
-	p_map = 0;
-	p_askWidget = 0;
+	p_map = nullptr;
+	p_askWidget = nullptr;
 
 	p_bigWidget = new TQHBox(this);
 
@@ -76,13 +76,13 @@ kgeography::kgeography() : TDEMainWindow(), p_firstShow(true), p_mustShowResults
 	a -> setText(i18n("&Open Map..."));
 	KStdAction::quit(this, TQ_SLOT(close()), actionCollection(), "quit");
 
-	p_zoom = new TDEToggleAction(i18n("&Zoom"), "zoom-fit-best", 0, 0, 0, actionCollection(), "zoom_select");
+	p_zoom = new TDEToggleAction(i18n("&Zoom"), "zoom-fit-best", 0, nullptr, nullptr, actionCollection(), "zoom_select");
 	p_zoom -> setEnabled(false);
 	
-	p_zoomOriginal = new TDEAction(i18n("&Original Size"), "zoom-original", 0, 0, 0, actionCollection(), "zoom_original");
+	p_zoomOriginal = new TDEAction(i18n("&Original Size"), "zoom-original", 0, nullptr, nullptr, actionCollection(), "zoom_original");
 	p_zoomOriginal -> setEnabled(false);
 
-	p_move = new TDEToggleAction(i18n("&Move"), "move", 0, 0, 0, actionCollection(), "move");
+	p_move = new TDEToggleAction(i18n("&Move"), "move", 0, nullptr, nullptr, actionCollection(), "move");
 	p_move -> setEnabled(false);
 
 	new TDEAction(i18n("Disclaimer"), 0, this, TQ_SLOT(disclaimer()), actionCollection(), "disclaimer");
@@ -249,7 +249,7 @@ void kgeography::askDivisionFlags()
 void kgeography::removeOldAskWidget()
 {
 	delete p_askWidget;
-	p_askWidget = 0;
+	p_askWidget = nullptr;
 	p_zoom -> setEnabled(false);
 	p_zoomOriginal -> setEnabled(false);
 	p_move -> setEnabled(false);
diff --git a/kgeography/src/main.cpp b/kgeography/src/main.cpp
index e324fdf3..516200c1 100644
--- a/kgeography/src/main.cpp
+++ b/kgeography/src/main.cpp
@@ -16,7 +16,7 @@
 
 int main(int argc, char *argv[])
 {
-	TDEAboutData about("kgeography", I18N_NOOP("KGeography"), "0.4.4", I18N_NOOP("A geography learning program"), TDEAboutData::License_GPL, "Â© 2004-2005 Albert Astals Cid", 0, "http://kgeography.berlios.de");
+	TDEAboutData about("kgeography", I18N_NOOP("KGeography"), "0.4.4", I18N_NOOP("A geography learning program"), TDEAboutData::License_GPL, "Â© 2004-2005 Albert Astals Cid", nullptr, "http://kgeography.berlios.de");
 	about.addAuthor("Albert Astals Cid", I18N_NOOP("Programmer and designer"), "tsdgeos@terra.es");
 	about.addCredit("Danny Allen", I18N_NOOP("Small refinements"), "danny@dannyallen.co.uk");
 	about.addCredit("Giuseppe Caruso", I18N_NOOP("Italy flags and Italy by provinces map"), "caruso@pietrobo.com");
@@ -27,7 +27,7 @@ int main(int argc, char *argv[])
 	about.addCredit("Frank Mutsaers", I18N_NOOP("Map contributor"));
 	about.addCredit("Maurizio Paolini", I18N_NOOP("Map contributor"));
 	about.addCredit("Yann Verley", I18N_NOOP("Contributed some maps and map generation tools"), "yann.verley@free.fr");
-	about.addCredit(I18N_NOOP("Sodipodi flags collection"), I18N_NOOP("Got some flags from it"), 0, "http://www.sodipodi.com/index.php3?section=clipart/flags");
+	about.addCredit(I18N_NOOP("Sodipodi flags collection"), I18N_NOOP("Got some flags from it"), nullptr, "http://www.sodipodi.com/index.php3?section=clipart/flags");
 	TDECmdLineArgs::init(argc, argv, &about);
 	TDEApplication app;
 
diff --git a/kgeography/src/mapasker.cpp b/kgeography/src/mapasker.cpp
index 0422aaea..5b11a64c 100644
--- a/kgeography/src/mapasker.cpp
+++ b/kgeography/src/mapasker.cpp
@@ -61,8 +61,8 @@ mapAsker::mapAsker(TQWidget *parent, KGmap *m, TQWidget *w, bool asker, uint cou
 	}
 	else
 	{
-		p_next = 0;
-		p_fill = 0;
+		p_next = nullptr;
+		p_fill = nullptr;
 	}
 }
 
diff --git a/kgeography/src/mapchooser.cpp b/kgeography/src/mapchooser.cpp
index da852413..4300d409 100644
--- a/kgeography/src/mapchooser.cpp
+++ b/kgeography/src/mapchooser.cpp
@@ -19,7 +19,7 @@
 
 #include "mapchooser.h"
 
-mapChooser::mapChooser(TQWidget *parent) : KDialogBase(parent, 0, true, i18n("Choose Map to Use"), KDialogBase::Ok | KDialogBase::Cancel, KDialogBase::Ok, true)
+mapChooser::mapChooser(TQWidget *parent) : KDialogBase(parent, nullptr, true, i18n("Choose Map to Use"), KDialogBase::Ok | KDialogBase::Cancel, KDialogBase::Ok, true)
 {
 	TQHBox *mainHB;
 	TQStringList list;
diff --git a/kgeography/src/popupmanager.cpp b/kgeography/src/popupmanager.cpp
index 5c86adeb..bee714f8 100644
--- a/kgeography/src/popupmanager.cpp
+++ b/kgeography/src/popupmanager.cpp
@@ -14,7 +14,7 @@
 popupManager::popupManager(TQWidget *parent)
 {
 	p_parent = parent;
-	p_mp = 0;
+	p_mp = nullptr;
 }
 
 void popupManager::show(const TQString &text, const TQString &text2, const TQPoint &p, const TQString &flagFile)
@@ -46,7 +46,7 @@ void popupManager::clear()
 	if (p_mp)
 	{
 		p_mp -> deleteLater();
-		p_mp = 0;
+		p_mp = nullptr;
 	}
 }
 
diff --git a/khangman/khangman/fontchecker.cpp b/khangman/khangman/fontchecker.cpp
index 56bd1731..40a7caec 100644
--- a/khangman/khangman/fontchecker.cpp
+++ b/khangman/khangman/fontchecker.cpp
@@ -20,7 +20,7 @@ bool fontChecker::checkInstalled(const TQFont &font, const TQString &fontPath)
 	// Works with Steve may need some tweaking to work with other fonts
 	if (!fi.exactMatch())
 	{
-		bool success = TDEIO::NetAccess::copy(fontPath, "fonts:/Personal/", 0);
+		bool success = TDEIO::NetAccess::copy(fontPath, "fonts:/Personal/", nullptr);
 		return !success;
 	}
 	return true;
diff --git a/khangman/khangman/khangman.cpp b/khangman/khangman/khangman.cpp
index 6917f3ae..641b6360 100644
--- a/khangman/khangman/khangman.cpp
+++ b/khangman/khangman/khangman.cpp
@@ -45,10 +45,10 @@
 
 
 KHangMan::KHangMan()
-    : TDEMainWindow( 0, "KHangMan" ),
+    : TDEMainWindow( nullptr, "KHangMan" ),
       m_view(new KHangManView(this))
 {
-    m_newStuff = 0;
+    m_newStuff = nullptr;
 
     setCentralWidget(m_view);
     setLanguages();
@@ -369,11 +369,11 @@ void KHangMan::optionsPreferences()
     //TDEConfigDialog didn't find an instance of this dialog, so lets create it :
     TDEConfigDialog* dialog = new TDEConfigDialog( this, "settings",  Prefs::self() );
     // Add the Normal Settings page
-    normal *mNormal =  new normal( 0, "Normal Settings" );
+    normal *mNormal =  new normal( nullptr, "Normal Settings" );
     dialog->addPage(mNormal, i18n("General"), "colorize");
 
     // Add the Advanced Settings page
-    mAdvanced = new advanced( 0, "Advanced" );
+    mAdvanced = new advanced( nullptr, "Advanced" );
     mAdvanced->kcfg_Hint->setEnabled( m_view->hintExists() );
     mAdvanced->kcfg_AccentedLetters->setEnabled(m_view->accentedLetters());
 
diff --git a/khangman/khangman/khangmanview.cpp b/khangman/khangman/khangmanview.cpp
index c2d11bf2..46a690db 100644
--- a/khangman/khangman/khangmanview.cpp
+++ b/khangman/khangman/khangmanview.cpp
@@ -411,7 +411,7 @@ void KHangManView::slotTry()
 		//
 		if (Prefs::sound()) {
 		    TQString soundFile = locate("data", "khangman/sounds/EW_Dialogue_Appear.ogg");
-		    if (soundFile != 0) 
+		    if (!soundFile.isEmpty()) 
 			KAudioPlayer::play(soundFile);
 		}
 
@@ -553,7 +553,7 @@ void KHangManView::slotNewGame()
 {
     if (Prefs::sound()) {
 	TQString soundFile = locate("data", "khangman/sounds/new_game.ogg");
-	if (soundFile != 0) 
+	if (!soundFile.isEmpty()) 
 	    KAudioPlayer::play(soundFile);
     }
 
diff --git a/khangman/khangman/khangmanview.h b/khangman/khangman/khangmanview.h
index 3e068b9c..2b27fe98 100644
--- a/khangman/khangman/khangmanview.h
+++ b/khangman/khangman/khangmanview.h
@@ -44,7 +44,7 @@ class KHangManView : public TQWidget
   
 public:
 
-    KHangManView(KHangMan *parent=0, const char *name=0);
+    KHangManView(KHangMan *parent=nullptr, const char *name=nullptr);
 
     virtual ~KHangManView();
 
diff --git a/khangman/khangman/main.cpp b/khangman/khangman/main.cpp
index ee086fe3..8d681f72 100644
--- a/khangman/khangman/main.cpp
+++ b/khangman/khangman/main.cpp
@@ -43,7 +43,7 @@ int main(int argc, char **argv)
 {
     TDEAboutData aboutData( "khangman", I18N_NOOP("KHangMan"),
                               KHM_VERSION, description, TDEAboutData::License_GPL,
-                              "(c) 2001-2006, Anne-Marie Mahfouf", 0,
+                              "(c) 2001-2006, Anne-Marie Mahfouf", nullptr,
 "http://edu.kde.org/khangman");
     aboutData.addAuthor("Primoz Anzur", I18N_NOOP("Previous maintainer"), "zerokode@gmx.net");
     //write the names with accents and all and this file save with utf8 encoding
@@ -113,7 +113,7 @@ int main(int argc, char **argv)
     TDECmdLineArgs::init( argc, argv, &aboutData );
     TDECmdLineArgs::addCmdLineOptions( options );
     TDEApplication app;
-    KHangMan *mainWin = 0;
+    KHangMan *mainWin = nullptr;
 
     TQFont f("Domestic Manners", 12, TQFont::Normal, true);
     TQFont fd("Dustismo Roman", 12, TQFont::Normal, true);
diff --git a/kig/filters/cabri-filter.cpp b/kig/filters/cabri-filter.cpp
index f65a0138..aa483098 100644
--- a/kig/filters/cabri-filter.cpp
+++ b/kig/filters/cabri-filter.cpp
@@ -293,7 +293,7 @@ KigDocument* KigFilterCabri::load( const TQString& file )
   if ( ! f.open( IO_ReadOnly ) )
   {
     fileNotFound( file );
-    return 0;
+    return nullptr;
   }
 
   KigDocument* ret = new KigDocument();
@@ -307,7 +307,7 @@ KigDocument* KigFilterCabri::load( const TQString& file )
     if ( s.left( 5 ) == "#FIG " )
     {
       notSupported( file, i18n( "This is an XFig file, not a Cabri figure." ) );
-      return 0;
+      return nullptr;
     }
     else
       KIG_FILTER_PARSE_ERROR;
@@ -333,14 +333,14 @@ KigDocument* KigFilterCabri::load( const TQString& file )
   const ObjectFactory* fact = ObjectFactory::instance();
 
   std::vector<ObjectCalcer*> args;
-  ObjectCalcer* oc = 0;
+  ObjectCalcer* oc = nullptr;
 
   while ( ! f.atEnd() )
   {
     CabriObject obj;
     // we do one object each iteration..
     if ( !readObject( f, obj ) )
-      return 0;
+      return nullptr;
 
 // reading linestyle
     TQt::PenStyle ls = TQt::SolidLine;
@@ -358,7 +358,7 @@ KigDocument* KigFilterCabri::load( const TQString& file )
 
     // two fake objects at the start ( origin and axes.. )
     if ( obj.id != calcers.size() + 3 ) KIG_FILTER_PARSE_ERROR;
-    oc = 0;
+    oc = nullptr;
     if ( obj.type == "Pt" )
     {
       if ( ! args.empty() ) KIG_FILTER_PARSE_ERROR;
@@ -427,7 +427,7 @@ KigDocument* KigFilterCabri::load( const TQString& file )
         args[1] = secondpoint;
       }
       if ( args.size() != 2 ) KIG_FILTER_PARSE_ERROR;
-      const ObjectType* t = 0;
+      const ObjectType* t = nullptr;
       if ( obj.type == "Line" ) t = LineABType::instance();
       else if ( obj.type == "Ray" ) t = RayABType::instance();
       else if ( obj.type == "Seg" ) t = SegmentABType::instance();
@@ -454,7 +454,7 @@ KigDocument* KigFilterCabri::load( const TQString& file )
     {
       if ( args.size() != 2 || obj.data.size() != 0 )
         KIG_FILTER_PARSE_ERROR;
-      const ObjectType* t = 0;
+      const ObjectType* t = nullptr;
       if ( obj.type == "Perp" ) t = LinePerpendLPType::instance();
       else if ( obj.type == "Par" ) t = LineParallelLPType::instance();
       else assert( false );
@@ -506,7 +506,7 @@ KigDocument* KigFilterCabri::load( const TQString& file )
       if ( args.size() != 1 || !obj.data.empty() )
         KIG_FILTER_PARSE_ERROR;
       ObjectCalcer* parent = args[0];
-      ObjectCalcer* midpoint = 0;
+      ObjectCalcer* midpoint = nullptr;
       if ( parent->imp()->inherits( SegmentImp::stype() ) )
         midpoint = fact->propertyObjectCalcer( parent, "mid-point" ) ;
 //       else if ( parent->imp()->inherits( VectorImp::stype() ) )
@@ -550,10 +550,10 @@ KigDocument* KigFilterCabri::load( const TQString& file )
     {
       notSupported( file, i18n( "This Cabri file contains a \"%1\" object, "
                                 "which Kig does not currently support." ).arg( TQString(obj.type) ) );
-      return 0;
+      return nullptr;
     }
 
-    if ( oc == 0 ) KIG_FILTER_PARSE_ERROR;
+    if ( !oc ) KIG_FILTER_PARSE_ERROR;
 
     oc->calc( *ret );
     calcers.push_back( oc );
@@ -561,7 +561,7 @@ KigDocument* KigFilterCabri::load( const TQString& file )
     ObjectHolder* oh = new ObjectHolder( oc, d );
     holders.push_back( oh );
 
-    oc = 0;
+    oc = nullptr;
   }
 
   ret->addObjects( holders );
diff --git a/kig/filters/drgeo-filter-chooser.cpp b/kig/filters/drgeo-filter-chooser.cpp
index 4ec6db88..05cd9efc 100644
--- a/kig/filters/drgeo-filter-chooser.cpp
+++ b/kig/filters/drgeo-filter-chooser.cpp
@@ -26,7 +26,7 @@
 #include <kstdguiitem.h>
 
 KigFilterDrgeoChooser::KigFilterDrgeoChooser( const TQStringList& l )
-  : KigFilterDrgeoChooserBase( 0, "drgeo_filter", true )
+  : KigFilterDrgeoChooserBase( nullptr, "drgeo_filter", true )
 {
   OKButton->setGuiItem( KStdGuiItem::ok() );
   CancelButton->setGuiItem( KStdGuiItem::cancel() );
@@ -43,7 +43,7 @@ void KigFilterDrgeoChooser::slotOKPressed()
   const int r = FigureListBox->currentItem();
   if ( r == -1 )
   {
-    KMessageBox::sorry( 0, i18n( "Please select a figure." ) );
+    KMessageBox::sorry( nullptr, i18n( "Please select a figure." ) );
     return;
   }
   done( r );
diff --git a/kig/filters/drgeo-filter.cpp b/kig/filters/drgeo-filter.cpp
index 1c904c3e..5ab681d4 100644
--- a/kig/filters/drgeo-filter.cpp
+++ b/kig/filters/drgeo-filter.cpp
@@ -84,7 +84,7 @@ KigDocument* KigFilterDrgeo::load( const TQString& file )
   if ( ! f.open( IO_ReadOnly ) )
   {
     fileNotFound( file );
-    return 0;
+    return nullptr;
   }
 
   TQStringList figures;
@@ -109,13 +109,13 @@ KigDocument* KigFilterDrgeo::load( const TQString& file )
                      "figures." ).arg( file ) );
     else
       warning( i18n( "There are no figures in Dr. Geo file \"%1\"." ).arg( file ) );
-    return 0;
+    return nullptr;
   }
 
   int nfig = figures.count();
   // no figures, no party...
   if ( nfig == 0 )
-    return 0;
+    return nullptr;
 
   int myfig = 0;
   
@@ -151,7 +151,7 @@ KigDocument* KigFilterDrgeo::load( const TQString& file )
     }
   }
 
-  return 0;
+  return nullptr;
 }
 
 int convertDrgeoIndex( const std::vector<DrGeoHierarchyElement> es, const TQString myid )
@@ -229,8 +229,8 @@ KigDocument* KigFilterDrgeo::importFigure( TQDomNode f, const TQString& file, co
   const ObjectFactory* fact = ObjectFactory::instance();
   std::vector<ObjectHolder*> holders;
   std::vector<ObjectHolder*> holders2;
-  ObjectTypeCalcer* oc = 0;
-  ObjectCalcer* oc2 = 0;
+  ObjectTypeCalcer* oc = nullptr;
+  ObjectCalcer* oc2 = nullptr;
   int nignored = 0;
 
   // there's no need to sort the objects because it seems that DrGeo objects
@@ -335,7 +335,7 @@ KigDocument* KigFilterDrgeo::importFigure( TQDomNode f, const TQString& file, co
           notSupported( file, i18n( "This Dr. Geo file contains a \"%1 %2\" object, "
                                     "which Kig does not currently support." ).arg( domelem.tagName() ).arg(
                                       domelem.attribute( "type" ) ) );
-          return 0;
+          return nullptr;
         }
       }
       else if ( domelem.attribute( "type" ) == "Intersection" )
@@ -352,7 +352,7 @@ KigDocument* KigFilterDrgeo::importFigure( TQDomNode f, const TQString& file, co
           else if ( which == 0 ) which = 1;
           else KIG_FILTER_PARSE_ERROR;
           std::vector<ObjectCalcer*> args = parents;
-          const ObjectType* type = 0;
+          const ObjectType* type = nullptr;
           args.push_back( new ObjectConstCalcer( new IntImp( which ) ) );
           if ( ( parents[0]->imp()->inherits( CircleImp::stype() ) ) &&
                ( parents[1]->imp()->inherits( CircleImp::stype() ) ) )
@@ -371,7 +371,7 @@ KigDocument* KigFilterDrgeo::importFigure( TQDomNode f, const TQString& file, co
           {
             notSupported( file, i18n( "This Dr. Geo file contains an intersection type, "
                                       "which Kig does not currently support." ) );
-            return 0;
+            return nullptr;
           }
           oc = new ObjectTypeCalcer( type, args );
         }
@@ -389,7 +389,7 @@ KigDocument* KigFilterDrgeo::importFigure( TQDomNode f, const TQString& file, co
         notSupported( file, i18n( "This Dr. Geo file contains a \"%1 %2\" object, "
                                   "which Kig does not currently support." ).arg( domelem.tagName() ).arg(
                                     domelem.attribute( "type" ) ) );
-        return 0;
+        return nullptr;
       }
 #ifdef DRGEO_DEBUG
       kdDebug() << "+++++++++ oc:" << oc << endl;
@@ -403,7 +403,7 @@ KigDocument* KigFilterDrgeo::importFigure( TQDomNode f, const TQString& file, co
              ( domelem.tagName() == "arcCircle" ) ||
              ( domelem.tagName() == "polygon" ) )
     {
-      const ObjectType* type = 0;
+      const ObjectType* type = nullptr;
       if ( domelem.attribute( "type" ) == "2pts" )
       {
         if( domelem.tagName() == "line" )
@@ -421,7 +421,7 @@ KigDocument* KigFilterDrgeo::importFigure( TQDomNode f, const TQString& file, co
           notSupported( file, i18n( "This Dr. Geo file contains a \"%1 %2\" object, "
                                     "which Kig does not currently support." ).arg( domelem.tagName() ).arg(
                                     domelem.attribute( "type" ) ) );
-          return 0;
+          return nullptr;
         }
         oc = new ObjectTypeCalcer( type, parents );
       }
@@ -434,7 +434,7 @@ KigDocument* KigFilterDrgeo::importFigure( TQDomNode f, const TQString& file, co
           notSupported( file, i18n( "This Dr. Geo file contains a \"%1 %2\" object, "
                                     "which Kig does not currently support." ).arg( domelem.tagName() ).arg(
                                     domelem.attribute( "type" ) ) );
-          return 0;
+          return nullptr;
         }
         oc = new ObjectTypeCalcer( type, parents );
       }
@@ -455,7 +455,7 @@ KigDocument* KigFilterDrgeo::importFigure( TQDomNode f, const TQString& file, co
           notSupported( file, i18n( "This Dr. Geo file contains a \"%1 %2\" object, "
                                     "which Kig does not currently support." ).arg( domelem.tagName() ).arg(
                                     domelem.attribute( "type" ) ) );
-          return 0;
+          return nullptr;
         }
         oc = new ObjectTypeCalcer( type, parents );
       }
@@ -471,7 +471,7 @@ KigDocument* KigFilterDrgeo::importFigure( TQDomNode f, const TQString& file, co
           notSupported( file, i18n( "This Dr. Geo file contains a \"%1 %2\" object, "
                                     "which Kig does not currently support." ).arg( domelem.tagName() ).arg(
                                     domelem.attribute( "type" ) ) );
-          return 0;
+          return nullptr;
         }
         oc = new ObjectTypeCalcer( type, parents );
       }
@@ -492,7 +492,7 @@ KigDocument* KigFilterDrgeo::importFigure( TQDomNode f, const TQString& file, co
         notSupported( file, i18n( "This Dr. Geo file contains a \"%1 %2\" object, "
                                   "which Kig does not currently support." ).arg( domelem.tagName() ).arg(
                                   domelem.attribute( "type" ) ) );
-        return 0;
+        return nullptr;
       }
 #ifdef DRGEO_DEBUG
       kdDebug() << "+++++++++ oc:" << oc << endl;
@@ -620,7 +620,7 @@ KigDocument* KigFilterDrgeo::importFigure( TQDomNode f, const TQString& file, co
         notSupported( file, i18n( "This Dr. Geo file contains a \"%1 %2\" object, "
                                   "which Kig does not currently support." ).arg( domelem.tagName() ).arg(
                                   domelem.attribute( "type" ) ) );
-        return 0;
+        return nullptr;
       }
 #ifdef DRGEO_DEBUG
       kdDebug() << "+++++++++ oc:" << oc << endl;
@@ -638,7 +638,7 @@ KigDocument* KigFilterDrgeo::importFigure( TQDomNode f, const TQString& file, co
         notSupported( file, i18n( "This Dr. Geo file contains a \"%1 %2\" object, "
                                   "which Kig does not currently support." ).arg( domelem.tagName() ).arg(
                                   domelem.attribute( "type" ) ) );
-        return 0;
+        return nullptr;
       }
 #ifdef DRGEO_DEBUG
       kdDebug() << "+++++++++ oc:" << oc << endl;
@@ -679,7 +679,7 @@ KigDocument* KigFilterDrgeo::importFigure( TQDomNode f, const TQString& file, co
         notSupported( file, i18n( "This Dr. Geo file contains a \"%1 %2\" object, "
                                   "which Kig does not currently support." ).arg( domelem.tagName() ).arg(
                                   domelem.attribute( "type" ) ) );
-        return 0;
+        return nullptr;
       }
     }
     else if ( domelem.tagName() == "locus" )
@@ -691,7 +691,7 @@ KigDocument* KigFilterDrgeo::importFigure( TQDomNode f, const TQString& file, co
         notSupported( file, i18n( "This Dr. Geo file contains a \"%1 %2\" object, "
                                   "which Kig does not currently support." ).arg( domelem.tagName() ).arg(
                                   domelem.attribute( "type" ) ) );
-        return 0;
+        return nullptr;
       }
 #ifdef DRGEO_DEBUG
       kdDebug() << "+++++++++ oc:" << oc << endl;
@@ -711,10 +711,10 @@ KigDocument* KigFilterDrgeo::importFigure( TQDomNode f, const TQString& file, co
       notSupported( file, i18n( "This Dr. Geo file contains a \"%1 %2\" object, "
                                 "which Kig does not currently support." ).arg( domelem.tagName() ).arg(
                                 domelem.attribute( "type" ) ) );
-      return 0;
+      return nullptr;
     }
     curid++;
-    if ( oc == 0 )
+    if ( !oc )
       continue;
 
 // reading color
@@ -783,15 +783,15 @@ KigDocument* KigFilterDrgeo::importFigure( TQDomNode f, const TQString& file, co
                holders[curid-1-nignored]->calcer(), "angle-degrees", *ret, false );
     }
 
-    oc = 0;
+    oc = nullptr;
 
-    if ( oc2 != 0 )
+    if ( oc2 )
     {
       oc2->calc( *ret );
       ObjectDrawer* d2 = new ObjectDrawer( co );
       ObjectHolder* o2 = new ObjectHolder( oc2, d2 );
       holders2.push_back( o2 );
-      oc2 = 0;
+      oc2 = nullptr;
     }
   }
 
diff --git a/kig/filters/exporter.cpp b/kig/filters/exporter.cpp
index a64bab01..51548568 100644
--- a/kig/filters/exporter.cpp
+++ b/kig/filters/exporter.cpp
@@ -71,14 +71,14 @@ public:
 
 ExporterAction::ExporterAction( const KigPart* doc, KigWidget* w,
                                 TDEActionCollection* parent, KigExporter* exp )
-  : TDEAction( exp->menuEntryName(), TDEShortcut(), 0, 0, parent ),
+  : TDEAction( exp->menuEntryName(), TDEShortcut(), nullptr, nullptr, parent ),
     mexp( exp ), mdoc( doc ), mw( w )
 {
   TQString iconstr = exp->menuIcon();
   if ( iconstr.isEmpty() )
     return;
   TDEIconLoader* l = doc->instance()->iconLoader();
-  TQPixmap icon = l->loadIcon( iconstr, TDEIcon::Small, 16, TDEIcon::DefaultState, 0L, true );
+  TQPixmap icon = l->loadIcon( iconstr, TDEIcon::Small, 16, TDEIcon::DefaultState, nullptr, true );
   if ( !icon.isNull() )
     setIconSet( TQIconSet( icon ) );
 }
@@ -124,7 +124,7 @@ void ImageExporter::run( const KigPart& doc, KigWidget& w )
       TQString(), KImageIO::pattern( KImageIO::Writing ),
       i18n( "Export as Image" ), &w );
   kfd->setOptionCaption( i18n( "Image Options" ) );
-  ImageExporterOptions* opts = new ImageExporterOptions( 0L, w.size() );
+  ImageExporterOptions* opts = new ImageExporterOptions( nullptr, w.size() );
   kfd->setOptionsWidget( opts );
   opts->WidthInput->setValue( w.size().width() );
   opts->HeightInput->setValue( w.size().height() );
diff --git a/kig/filters/filter.cpp b/kig/filters/filter.cpp
index 6a543430..2a74e201 100644
--- a/kig/filters/filter.cpp
+++ b/kig/filters/filter.cpp
@@ -37,7 +37,7 @@ KigFilter* KigFilters::find(const TQString& mime)
     {
       if ((*i)->supportMime(mime)) return *i;
     };
-  return 0;
+  return nullptr;
 }
 
 KigFilters::KigFilters()
@@ -69,7 +69,7 @@ bool KigFilter::supportMime( const TQString& )
 
 void KigFilter::fileNotFound( const TQString& file ) const
 {
-  KMessageBox::sorry( 0,
+  KMessageBox::sorry( nullptr,
                       i18n( "The file \"%1\" could not be opened.  "
                             "This probably means that it does not "
                             "exist, or that it cannot be opened due to "
@@ -84,21 +84,21 @@ void KigFilter::parseError( const TQString& file, const TQString& explanation )
   const TQString title = i18n( "Parse Error" );
 
   if ( explanation.isNull() )
-    KMessageBox::sorry( 0, text, title );
+    KMessageBox::sorry( nullptr, text, title );
   else
-    KMessageBox::detailedSorry( 0, text, explanation, title );
+    KMessageBox::detailedSorry( nullptr, text, explanation, title );
 }
 
 void KigFilter::notSupported( const TQString& file, const TQString& explanation ) const
 {
-  KMessageBox::detailedSorry( 0,
+  KMessageBox::detailedSorry( nullptr,
                               i18n( "Kig cannot open the file \"%1\"." ).arg( file ),
                               explanation, i18n( "Not Supported" ) );
 }
 
 void KigFilter::warning( const TQString& explanation ) const
 {
-  KMessageBox::information( 0, explanation );
+  KMessageBox::information( nullptr, explanation );
 }
 
 bool KigFilters::save( const KigDocument& data, const TQString& tofile )
diff --git a/kig/filters/kgeo-filter.cpp b/kig/filters/kgeo-filter.cpp
index 1b0900cf..5e9f4bac 100644
--- a/kig/filters/kgeo-filter.cpp
+++ b/kig/filters/kgeo-filter.cpp
@@ -139,7 +139,7 @@ KigDocument* KigFilterKGeo::loadObjects( const TQString& file, TDESimpleConfig*
 
   std::vector<KGeoHierarchyElement> sortedElems = sortElems( elems );
   std::vector<ObjectHolder*> os;
-  os.resize( number, 0 );
+  os.resize( number, nullptr );
   const ObjectFactory* factory = ObjectFactory::instance();
 
   // now we iterate over the elems again in the newly determined
@@ -160,7 +160,7 @@ KigDocument* KigFilterKGeo::loadObjects( const TQString& file, TDESimpleConfig*
       parents.push_back( os[parentid]->calcer() );
     };
 
-    ObjectCalcer* o = 0;
+    ObjectCalcer* o = nullptr;
     switch (objID)
     {
     case ID_point:
diff --git a/kig/filters/kseg-filter.cpp b/kig/filters/kseg-filter.cpp
index 1567ed37..65067222 100644
--- a/kig/filters/kseg-filter.cpp
+++ b/kig/filters/kseg-filter.cpp
@@ -95,7 +95,7 @@ static Coordinate readKSegCoordinate( TQDataStream& stream )
 
 static ObjectTypeCalcer* intersectionPoint( const std::vector<ObjectCalcer*>& parents, int which )
 {
-  if ( parents.size() != 2 ) return 0;
+  if ( parents.size() != 2 ) return nullptr;
   int nlines = 0;
   int nconics = 0;
   int narcs = 0;
@@ -104,10 +104,10 @@ static ObjectTypeCalcer* intersectionPoint( const std::vector<ObjectCalcer*>& pa
     if ( parents[i]->imp()->inherits( AbstractLineImp::stype() ) ) ++nlines;
     else if ( parents[i]->imp()->inherits( ConicImp::stype() ) ) ++nconics;
     else if ( parents[i]->imp()->inherits( ArcImp::stype() ) ) ++narcs;
-    else return 0;
+    else return nullptr;
   };
   if ( nlines == 2 )
-    return which == -1 ? new ObjectTypeCalcer( LineLineIntersectionType::instance(), parents ) : 0;
+    return which == -1 ? new ObjectTypeCalcer( LineLineIntersectionType::instance(), parents ) : nullptr;
   else if ( nlines == 1 && nconics == 1 )
   {
     std::vector<ObjectCalcer*> intparents( parents );
@@ -132,7 +132,7 @@ static ObjectTypeCalcer* intersectionPoint( const std::vector<ObjectCalcer*>& pa
     intparents.push_back( new ObjectConstCalcer( new IntImp( which ) ) );
     return new ObjectTypeCalcer( ArcLineIntersectionType::instance(), intparents );
   }
-  else return 0;
+  else return nullptr;
 }
 
 ObjectCalcer* KigFilterKSeg::transformObject( const TQString& file, KigDocument& kigdoc,
@@ -140,7 +140,7 @@ ObjectCalcer* KigFilterKSeg::transformObject( const TQString& file, KigDocument&
                                               int subtype, bool& ok )
 {
   ok = true;
-  ObjectCalcer* retobj = 0;
+  ObjectCalcer* retobj = nullptr;
   switch( subtype )
   {
     case G_TRANSLATED:
@@ -181,7 +181,7 @@ ObjectCalcer* KigFilterKSeg::transformObject( const TQString& file, KigDocument&
                                   "transformation, which Kig currently "
                                   "cannot import." ) );
         ok = false;
-        return 0;
+        return nullptr;
       }
       break;
     }
@@ -202,7 +202,7 @@ KigDocument* KigFilterKSeg::load( const TQString& file )
   if ( ! ffile.open( IO_ReadOnly ) )
   {
     fileNotFound( file );
-    return 0;
+    return nullptr;
   };
 
   KigDocument* retdoc = new KigDocument();
@@ -241,7 +241,7 @@ KigDocument* KigFilterKSeg::load( const TQString& file )
   unsigned int count;
   stream >> count;
 
-  ret.resize( count, 0 );
+  ret.resize( count, nullptr );
   const ObjectFactory* fact = ObjectFactory::instance();
 
   // KSeg topologically sorts the objects before saving, that means we
@@ -252,7 +252,7 @@ KigDocument* KigFilterKSeg::load( const TQString& file )
     stream >> styleid;
     short nparents;
     stream >> nparents;
-    std::vector<ObjectCalcer*> parents( nparents, 0 );
+    std::vector<ObjectCalcer*> parents( nparents, nullptr );
     for ( short j = 0; j < nparents; ++j )
     {
       int parent;
@@ -294,8 +294,8 @@ KigDocument* KigFilterKSeg::load( const TQString& file )
     };
 
     // now load the object data..
-    ObjectHolder* object = 0;
-    ObjectCalcer* o = 0;
+    ObjectHolder* object = nullptr;
+    ObjectCalcer* o = nullptr;
     bool ok = true;
 
     TQColor color = style.pen.color();
@@ -558,19 +558,19 @@ KigDocument* KigFilterKSeg::load( const TQString& file )
       {
         notSupported( file, i18n( "This KSeg file contains a filled circle, "
                                   "which Kig does not currently support." ) );
-        return 0;
+        return nullptr;
       };
       case G_ARCSECTOR:
       {
         notSupported( file, i18n( "This KSeg file contains an arc sector, "
                                   "which Kig does not currently support." ) );
-        return 0;
+        return nullptr;
       };
       case G_ARCSEGMENT:
       {
         notSupported( file, i18n( "This KSeg file contains an arc segment, "
                                   "which Kig does not currently support." ) );
-        return 0;
+        return nullptr;
       };
       case G_LOCUS:
       {
@@ -614,7 +614,7 @@ KigDocument* KigFilterKSeg::load( const TQString& file )
       if ( ok )
         KIG_FILTER_PARSE_ERROR
       else
-        return 0;
+        return nullptr;
     }
 
     ObjectDrawer* d = new ObjectDrawer( color, width, visible, style.pen.style() );
diff --git a/kig/filters/latexexporter.cpp b/kig/filters/latexexporter.cpp
index bbf6144a..a1500def 100644
--- a/kig/filters/latexexporter.cpp
+++ b/kig/filters/latexexporter.cpp
@@ -486,7 +486,7 @@ void LatexExporter::run( const KigPart& doc, KigWidget& w )
       TQString(), i18n( "*.tex|Latex Documents (*.tex)" ),
       i18n( "Export as Latex" ), &w );
   kfd->setOptionCaption( i18n( "Latex Options" ) );
-  LatexExporterOptions* opts = new LatexExporterOptions( 0L );
+  LatexExporterOptions* opts = new LatexExporterOptions( nullptr );
   kfd->setOptionsWidget( opts );
   opts->showGridCheckBox->setChecked( doc.document().grid() );
   opts->showAxesCheckBox->setChecked( doc.document().axes() );
diff --git a/kig/filters/native-filter.cpp b/kig/filters/native-filter.cpp
index 72c464a8..9fd5d505 100644
--- a/kig/filters/native-filter.cpp
+++ b/kig/filters/native-filter.cpp
@@ -108,7 +108,7 @@ KigDocument* KigFilterNative::load( const TQString& file )
   if ( ! ffile.open( IO_ReadOnly ) )
   {
     fileNotFound( file );
-    return 0;
+    return nullptr;
   };
 
   TQFile kigdoc( file );
@@ -194,7 +194,7 @@ KigDocument* KigFilterNative::load( const TQString& file )
   {
     notSupported( file, i18n( "This file was created by Kig version \"%1\", "
                               "which this version cannot open." ).arg( version ) );
-    return 0;
+    return nullptr;
   }
   else if ( major == 0 && minor <= 3 )
   {
@@ -205,7 +205,7 @@ KigDocument* KigFilterNative::load( const TQString& file )
                               "version (0.4 to 0.6),\n"
                               "and then save it again, which will save it in the "
                               "new format." ).arg( version ) );
-    return 0;
+    return nullptr;
   }
   else if ( major == 0 && minor <= 6 )
     return load04( file, main );
@@ -283,14 +283,14 @@ KigDocument* KigFilterNative::load04( const TQString& file, const TQDomElement&
           KIG_FILTER_PARSE_ERROR;
       elems = sortElems( elems );
 
-      retcalcers.resize( elems.size(), 0 );
+      retcalcers.resize( elems.size(), nullptr );
 
       for ( std::vector<HierElem>::iterator i = elems.begin();
             i != elems.end(); ++i )
       {
         TQDomElement e = i->el;
         bool internal = e.attribute( "internal" ) == "true" ? true : false;
-        ObjectCalcer* o = 0;
+        ObjectCalcer* o = nullptr;
         if ( e.tagName() == "Data" )
         {
           TQString tmp = e.attribute( "type" );
@@ -301,7 +301,7 @@ KigDocument* KigFilterNative::load04( const TQString& file, const TQDomElement&
           if ( ( !imp ) && !error.isEmpty() )
           {
             parseError( file, error );
-            return 0;
+            return nullptr;
           }
           o = new ObjectConstCalcer( imp );
         }
@@ -339,7 +339,7 @@ KigDocument* KigFilterNative::load04( const TQString& file, const TQDomElement&
                                       "Perhaps you have compiled Kig without support "
                                       "for this object type,"
                                       "or perhaps you are using an older Kig version." ).arg( tmp ) );
-            return 0;
+            return nullptr;
           };
 
           std::vector<ObjectCalcer*> parents;
@@ -448,7 +448,7 @@ KigDocument* KigFilterNative::load07( const TQString& file, const TQDomElement&
           parents.push_back( parent );
         }
 
-        ObjectCalcer* o = 0;
+        ObjectCalcer* o = nullptr;
 
         if ( e.tagName() == "Data" )
         {
@@ -459,7 +459,7 @@ KigDocument* KigFilterNative::load07( const TQString& file, const TQDomElement&
           if ( ( !imp ) && !error.isEmpty() )
           {
             parseError( file, error );
-            return 0;
+            return nullptr;
           }
           o = new ObjectConstCalcer( imp );
         }
@@ -486,7 +486,7 @@ KigDocument* KigFilterNative::load07( const TQString& file, const TQDomElement&
                                       "Perhaps you have compiled Kig without support "
                                       "for this object type,"
                                       "or perhaps you are using an older Kig version." ).arg( tmp ) );
-            return 0;
+            return nullptr;
           }
 
 	  // mp: (I take the responsibility for this!) explanation: the usual ObjectTypeCalcer
@@ -505,7 +505,7 @@ KigDocument* KigFilterNative::load07( const TQString& file, const TQDomElement&
         else KIG_FILTER_PARSE_ERROR;
 
         o->calc( *ret );
-        calcers.resize( id, 0 );
+        calcers.resize( id, nullptr );
         calcers[id-1] = o;
       }
     }
@@ -541,7 +541,7 @@ KigDocument* KigFilterNative::load07( const TQString& file, const TQDomElement&
         tmp = e.attribute( "point-style" );
         int pointstyle = ObjectDrawer::pointStyleFromString( tmp );
 
-        ObjectConstCalcer* namecalcer = 0;
+        ObjectConstCalcer* namecalcer = nullptr;
         tmp = e.attribute( "namecalcer" );
         if ( tmp != "none" && !tmp.isEmpty() )
         {
diff --git a/kig/filters/svgexporter.cpp b/kig/filters/svgexporter.cpp
index 54e9c5f1..59ab1544 100644
--- a/kig/filters/svgexporter.cpp
+++ b/kig/filters/svgexporter.cpp
@@ -62,7 +62,7 @@ void SVGExporter::run( const KigPart& part, KigWidget& w )
       TQString(), i18n( "*.svg|Scalable Vector Graphics (*.svg)" ),
       i18n( "Export as SVG" ), &w );
   kfd->setOptionCaption( i18n( "SVG Options" ) );
-  SVGExporterOptions* opts = new SVGExporterOptions( 0L );
+  SVGExporterOptions* opts = new SVGExporterOptions( nullptr );
   kfd->setOptionsWidget( opts );
   opts->showGridCheckBox->setChecked( part.document().grid() );
   opts->showAxesCheckBox->setChecked( part.document().axes() );
diff --git a/kig/kig/aboutdata.h b/kig/kig/aboutdata.h
index be6af4f4..ce62b0dd 100644
--- a/kig/kig/aboutdata.h
+++ b/kig/kig/aboutdata.h
@@ -28,7 +28,7 @@ inline TDEAboutData* kigAboutData( const char* name, const char* iname )
   TDEAboutData* tmp = new TDEAboutData( name, iname, version,
 				   description, TDEAboutData::License_GPL,
 				   I18N_NOOP( "(C) 2002-2005, The Kig developers" ),
-				   0, "http://edu.kde.org/kig" );
+				   nullptr, "http://edu.kde.org/kig" );
   tmp->addAuthor("Dominique Devriese",
                  I18N_NOOP("Original author, long time maintainer, design and lots of code."),
 		  "devriese@kde.org" );
diff --git a/kig/kig/kig.cpp b/kig/kig/kig.cpp
index 9f63636c..578d0d14 100644
--- a/kig/kig/kig.cpp
+++ b/kig/kig/kig.cpp
@@ -43,7 +43,7 @@
 #include <assert.h>
 
 Kig::Kig()
-  : KParts::MainWindow( 0L, "Kig" ), m_part( 0 )
+  : KParts::MainWindow( nullptr, "Kig" ), m_part( nullptr )
 {
   // setting the configation file
   config = new TDEConfig( "kigrc" );
@@ -62,7 +62,7 @@ Kig::Kig()
   // that boost.python fails to link against python ( on Debian at
   // least ).
   KLibrary* library = KLibLoader::self()->globalLibrary("libkigpart");
-  KLibFactory* factory = 0;
+  KLibFactory* factory = nullptr;
   if ( library ) factory = library->factory();
   if (factory)
   {
diff --git a/kig/kig/kig_part.cpp b/kig/kig/kig_part.cpp
index c5b59b8d..41008814 100644
--- a/kig/kig/kig_part.cpp
+++ b/kig/kig/kig_part.cpp
@@ -112,7 +112,7 @@ class KigPrintDialogPage
   : public KPrintDialogPage
 {
 public:
-  KigPrintDialogPage( TQWidget* parent = 0, const char* name = 0 );
+  KigPrintDialogPage( TQWidget* parent = nullptr, const char* name = nullptr );
   ~KigPrintDialogPage();
 
   void getOptions( TQMap<TQString,TQString>& opts, bool );
@@ -169,7 +169,7 @@ KigPart::KigPart( TQWidget *parentWidget, const char *,
 			  TQObject *parent, const char *name,
 			  const TQStringList& )
   : KParts::ReadWritePart( parent, name ),
-    mMode( 0 ), mdocument( new KigDocument() )
+    mMode( nullptr ), mdocument( new KigDocument() )
 {
   // we need an instance
   setInstance( KigPartFactory::instance() );
@@ -638,7 +638,7 @@ void KigPart::doneMode( KigMode* d )
 
 void KigPart::actionRemoved( GUIAction* a, GUIUpdateToken& t )
 {
-  KigGUIAction* rem = 0;
+  KigGUIAction* rem = nullptr;
   for ( std::vector<KigGUIAction*>::iterator i = aActions.begin(); i != aActions.end(); ++i )
   {
     if ( (*i)->guiAction() == a )
@@ -730,8 +730,8 @@ void KigPart::setupBuiltinMacros()
         macro->ctor->setBuiltin( true );
         ctors->add( macro->ctor );
         actions->add( macro->action );
-        macro->ctor = 0;
-        macro->action = 0;
+        macro->ctor = nullptr;
+        macro->action = nullptr;
         delete macro;
       };
     };
@@ -833,7 +833,7 @@ void KigPart::hideObjects( const std::vector<ObjectHolder*>& inos )
     if ( (*i)->shown() )
       os.push_back( *i );
   };
-  KigCommand* kc = 0;
+  KigCommand* kc = nullptr;
   if ( os.size() == 0 ) return;
   else if ( os.size() == 1 )
     kc = new KigCommand( *this, os[0]->imp()->type()->hideAStatement() );
@@ -852,7 +852,7 @@ void KigPart::showObjects( const std::vector<ObjectHolder*>& inos )
     if ( !(*i)->shown() )
       os.push_back( *i );
   };
-  KigCommand* kc = 0;
+  KigCommand* kc = nullptr;
   if ( os.size() == 0 ) return;
   else if ( os.size() == 1 )
     kc = new KigCommand( *this, os[0]->imp()->type()->showAStatement() );
diff --git a/kig/kig/kig_part.h b/kig/kig/kig_part.h
index 8865b856..ec80412b 100644
--- a/kig/kig/kig_part.h
+++ b/kig/kig/kig_part.h
@@ -67,7 +67,7 @@ public:
    * Default constructor
    */
   KigPart( TQWidget* parentWidget, const char* widgetName,
-	       TQObject* parent = 0, const char* name = 0,
+	       TQObject* parent = nullptr, const char* name = nullptr,
 	       const TQStringList& = TQStringList()
 	       );
 
diff --git a/kig/kig/kig_view.cpp b/kig/kig/kig_view.cpp
index b9f64590..5c323fe5 100644
--- a/kig/kig/kig_view.cpp
+++ b/kig/kig/kig_view.cpp
@@ -290,9 +290,9 @@ KigView::KigView( KigPart* part,
                   TQWidget* parent,
                   const char* name )
   : TQWidget( parent, name ),
-    mlayout( 0 ), mrightscroll( 0 ), mbottomscroll( 0 ),
+    mlayout( nullptr ), mrightscroll( nullptr ), mbottomscroll( nullptr ),
     mupdatingscrollbars( false ),
-    mrealwidget( 0 ), mpart( part )
+    mrealwidget( nullptr ), mpart( part )
 {
   connect( part, TQ_SIGNAL( recenterScreen() ), this, TQ_SLOT( slotInternalRecenterScreen() ) );
 
diff --git a/kig/kig/kig_view.h b/kig/kig/kig_view.h
index 99535218..9c1eb39e 100644
--- a/kig/kig/kig_view.h
+++ b/kig/kig/kig_view.h
@@ -105,8 +105,8 @@ public:
    */
   KigWidget( KigPart* doc,
              KigView* view,
-             TQWidget* parent = 0,
-             const char* name = 0,
+             TQWidget* parent = nullptr,
+             const char* name = nullptr,
              bool fullscreen = false
 	   );
   ~KigWidget();
@@ -246,8 +246,8 @@ class KigView
 public:
   KigView( KigPart* part,
            bool fullscreen = false,
-	   TQWidget* parent = 0,
-	   const char* name = 0
+	   TQWidget* parent = nullptr,
+	   const char* name = nullptr
 	   );
   ~KigView();
 
diff --git a/kig/kig/main.cpp b/kig/kig/main.cpp
index b0c2d963..a7881abe 100644
--- a/kig/kig/main.cpp
+++ b/kig/kig/main.cpp
@@ -31,11 +31,11 @@
 
 static TDECmdLineOptions options[] =
   {
-    { "c", 0, 0 },
-    { "convert-to-native", I18N_NOOP( "Do not show a GUI. Convert the specified file to the native Kig format. Output goes to stdout unless --outfile is specified." ), 0 },
-    { "o", 0, 0 },
-    { "outfile <file>", I18N_NOOP( "File to output the created native file to. '-' means output to stdout. Default is stdout as well." ), 0 },
-    { "+[URL]", I18N_NOOP( "Document to open" ), 0 },
+    { "c", nullptr, nullptr },
+    { "convert-to-native", I18N_NOOP( "Do not show a GUI. Convert the specified file to the native Kig format. Output goes to stdout unless --outfile is specified." ), nullptr },
+    { "o", nullptr, nullptr },
+    { "outfile <file>", I18N_NOOP( "File to output the created native file to. '-' means output to stdout. Default is stdout as well." ), nullptr },
+    { "+[URL]", I18N_NOOP( "Document to open" ), nullptr },
     TDECmdLineLastOption
   };
 
diff --git a/kig/misc/argsparser.cpp b/kig/misc/argsparser.cpp
index c2387970..693c137a 100644
--- a/kig/misc/argsparser.cpp
+++ b/kig/misc/argsparser.cpp
@@ -115,7 +115,7 @@ static Collection parse( const Collection& os,
   for ( typename Collection::const_iterator o = os.begin(); o != os.end(); ++o )
   {
     for( uint i = 0; i < margs.size(); ++i )
-      if ( hasimp( **o, margs[i].type ) && ret[i] == 0 )
+      if ( hasimp( **o, margs[i].type ) && !ret[i] )
       {
         // object o is of a type that we're looking for
         ret[i] = *o;
@@ -155,7 +155,7 @@ ArgsParser ArgsParser::without( const ObjectImpType* type ) const
 ArgsParser::spec ArgsParser::findSpec( const ObjectImp* obj, const Args& parents ) const
 {
   spec ret;
-  ret.type = 0;
+  ret.type = nullptr;
 
   std::vector<bool> found( margs.size(), false );
 
@@ -262,6 +262,6 @@ std::string ArgsParser::selectStatement( const Args& selection ) const
       return margs[i].selectstat;
   }
   kdDebug() << k_funcinfo << "no proper select statement found :(" << endl;
-  return 0;
+  return nullptr;
 }
 
diff --git a/kig/misc/boost_intrusive_pointer.h b/kig/misc/boost_intrusive_pointer.h
index 292a73c9..0143bf25 100644
--- a/kig/misc/boost_intrusive_pointer.h
+++ b/kig/misc/boost_intrusive_pointer.h
@@ -69,13 +69,13 @@ public:
 
     typedef T element_type;
 
-    intrusive_ptr(): p_(0)
+    intrusive_ptr(): p_(nullptr)
     {
     }
 
     intrusive_ptr(T * p, bool add_ref = true): p_(p)
     {
-        if(p_ != 0 && add_ref) intrusive_ptr_add_ref(p_);
+        if(p_ && add_ref) intrusive_ptr_add_ref(p_);
     }
 
 #if !defined(BOOST_NO_MEMBER_TEMPLATES) || defined(BOOST_MSVC6_MEMBER_TEMPLATES)
@@ -89,12 +89,12 @@ public:
 
     intrusive_ptr(intrusive_ptr const & rhs): p_(rhs.p_)
     {
-        if(p_ != 0) intrusive_ptr_add_ref(p_);
+        if(p_) intrusive_ptr_add_ref(p_);
     }
 
     ~intrusive_ptr()
     {
-        if(p_ != 0) intrusive_ptr_release(p_);
+        if(p_) intrusive_ptr_release(p_);
     }
 
 #if !defined(BOOST_NO_MEMBER_TEMPLATES) || defined(BOOST_MSVC6_MEMBER_TEMPLATES)
@@ -138,12 +138,12 @@ public:
 
     operator unspecified_bool_type () const
     {
-        return p_ == 0? 0: &intrusive_ptr::get;
+        return p_ ? &intrusive_ptr::get : nullptr;
     }
 
     bool operator! () const
     {
-        return p_ == 0;
+        return !p_;
     }
 
     void swap(intrusive_ptr & rhs)
diff --git a/kig/misc/builtin_stuff.cpp b/kig/misc/builtin_stuff.cpp
index d42ef8ad..4ae58726 100644
--- a/kig/misc/builtin_stuff.cpp
+++ b/kig/misc/builtin_stuff.cpp
@@ -51,7 +51,7 @@ void setupBuiltinStuff()
   {
     ObjectConstructorList* ctors = ObjectConstructorList::instance();
     GUIActionList* actions = GUIActionList::instance();
-    ObjectConstructor* c = 0;
+    ObjectConstructor* c = nullptr;
 
     // segment...
     c = new SimpleObjectTypeConstructor(
diff --git a/kig/misc/common.cpp b/kig/misc/common.cpp
index 9553b14f..8b02a5df 100644
--- a/kig/misc/common.cpp
+++ b/kig/misc/common.cpp
@@ -345,7 +345,7 @@ Coordinate calcCircleRadicalStartPoint( const Coordinate& ca, const Coordinate&
 double getDoubleFromUser( const TQString& caption, const TQString& label, double value,
                           TQWidget* parent, bool* ok, double min, double max, int decimals )
 {
-  KDoubleValidator vtor( min, max, decimals, 0, 0 );
+  KDoubleValidator vtor( min, max, decimals, nullptr, nullptr );
   TQString input = KInputDialog::getText(
     caption, label, TDEGlobal::locale()->formatNumber( value, decimals ),
     ok, parent, "getDoubleFromUserDialog", &vtor );
diff --git a/kig/misc/coordinate_system.cpp b/kig/misc/coordinate_system.cpp
index bdd3f1da..a6d149ac 100644
--- a/kig/misc/coordinate_system.cpp
+++ b/kig/misc/coordinate_system.cpp
@@ -54,7 +54,7 @@ public:
 
 
 CoordinateValidator::CoordinateValidator( bool polar )
-  : TQValidator( 0, 0 ), mpolar( polar ), mdv( 0, 0 ),
+  : TQValidator( nullptr, nullptr ), mpolar( polar ), mdv( nullptr, nullptr ),
     mre( polar ? "\\(? ?([0-9.,+-]+); ?([0-9.,+-]+) ?°? ?\\)?"
          : "\\(? ?([0-9.,+-]+); ?([0-9.,+-]+) ?\\)?" )
 {
@@ -526,7 +526,7 @@ CoordinateSystem* CoordinateSystemFactory::build( int which )
     return new EuclideanCoords;
   else if ( which == Polar )
     return new PolarCoords;
-  else return 0;
+  else return nullptr;
 }
 
 static const char euclideanTypeString[] = "Euclidean";
@@ -538,7 +538,7 @@ CoordinateSystem* CoordinateSystemFactory::build( const char* type )
     return new EuclideanCoords;
   if ( std::string( polarTypeString ) == type )
     return new PolarCoords;
-  else return 0;
+  else return nullptr;
 }
 
 const char* EuclideanCoords::type() const
diff --git a/kig/misc/guiaction.cpp b/kig/misc/guiaction.cpp
index 0d7b35d9..d79d188e 100644
--- a/kig/misc/guiaction.cpp
+++ b/kig/misc/guiaction.cpp
@@ -84,9 +84,9 @@ KigGUIAction::KigGUIAction( GUIAction* act,
                             TQObject* parent )
   : TDEAction( act->descriptiveName(),
              doc.instance()->iconLoader()->loadIcon(
-               act->iconFileName(), TDEIcon::Toolbar, 0, TDEIcon::DefaultState, 0L, true ),
+               act->iconFileName(), TDEIcon::Toolbar, 0, TDEIcon::DefaultState, nullptr, true ),
              act->shortcut(),
-             0, 0,              // no slot connection
+             nullptr, nullptr,              // no slot connection
              parent, act->actionName() ),
   mact( act ),
   mdoc( doc )
diff --git a/kig/misc/kigfiledialog.cpp b/kig/misc/kigfiledialog.cpp
index 28d4dc74..6400a229 100644
--- a/kig/misc/kigfiledialog.cpp
+++ b/kig/misc/kigfiledialog.cpp
@@ -27,7 +27,7 @@
 KigFileDialog::KigFileDialog( const TQString& startDir, const TQString& filter,
               const TQString& caption,  TQWidget* parent )
   : KFileDialog( startDir, filter, parent, "kigfiledialog", true ),
-    mow( 0L )
+    mow( nullptr )
 {
   setCaption( caption );
   setOperationMode( Saving );
diff --git a/kig/misc/kiginputdialog.cpp b/kig/misc/kiginputdialog.cpp
index 24c659cf..e3196410 100644
--- a/kig/misc/kiginputdialog.cpp
+++ b/kig/misc/kiginputdialog.cpp
@@ -59,8 +59,8 @@ public:
 };
 
 KigInputDialogPrivate::KigInputDialogPrivate()
-  : m_label( 0L ), m_lineEditFirst( 0L ), m_lineEditSecond( 0L ), m_comboBox( 0L ),
-    m_textEdit( 0L )
+  : m_label( nullptr ), m_lineEditFirst( nullptr ), m_lineEditSecond( nullptr ), m_comboBox( nullptr ),
+    m_textEdit( nullptr )
 {
 }
 
@@ -136,7 +136,7 @@ KigInputDialog::KigInputDialog( TQWidget* parent, const Goniometry& g )
   d->m_label->setText( i18n( "Insert the new size of this angle:" ) );
   mainlay->addWidget( d->m_label );
 
-  TQHBoxLayout* horlay = new TQHBoxLayout( 0, 0, spacingHint() );
+  TQHBoxLayout* horlay = new TQHBoxLayout( nullptr, 0, spacingHint() );
   horlay->activate();
 
   d->m_lineEditFirst = new KLineEdit( frame );
@@ -249,7 +249,7 @@ Goniometry KigInputDialog::goniometry() const
 void KigInputDialog::getCoordinate( const TQString& caption, const TQString& label,
       TQWidget* parent, bool* ok, const KigDocument& doc, Coordinate* cvalue )
 {
-  getTwoCoordinates( caption, label, parent, ok, doc, cvalue, 0 );
+  getTwoCoordinates( caption, label, parent, ok, doc, cvalue, nullptr );
 }
 
 void KigInputDialog::getTwoCoordinates( const TQString& caption, const TQString& label,
diff --git a/kig/misc/kigpainter.cpp b/kig/misc/kigpainter.cpp
index cbaf57be..117f36c7 100644
--- a/kig/misc/kigpainter.cpp
+++ b/kig/misc/kigpainter.cpp
@@ -768,7 +768,7 @@ void KigPainter::drawCurve( const CurveImp* curve )
   workstack.push( workitem(
                     coordparampair( 0., coo1 ),
                     coordparampair( 1., coo2 ),
-                    0 ) );
+                    nullptr ) );
 
   // maxlength is the square of the maximum size that we allow
   // between two points..
diff --git a/kig/misc/lists.cpp b/kig/misc/lists.cpp
index f0e0c3f7..01b6b728 100644
--- a/kig/misc/lists.cpp
+++ b/kig/misc/lists.cpp
@@ -301,13 +301,13 @@ bool MacroList::load( const TQString& f, std::vector<Macro*>& ret, const KigPart
   TQFile file( f );
   if ( ! file.open( IO_ReadOnly ) )
   {
-    KMessageBox::sorry( 0, i18n( "Could not open macro file '%1'" ).arg( f ) );
+    KMessageBox::sorry( nullptr, i18n( "Could not open macro file '%1'" ).arg( f ) );
     return false;
   }
   TQDomDocument doc( "KigMacroFile" );
   if ( !doc.setContent( &file ) )
   {
-    KMessageBox::sorry( 0, i18n( "Could not open macro file '%1'" ).arg( f ) );
+    KMessageBox::sorry( nullptr, i18n( "Could not open macro file '%1'" ).arg( f ) );
     return false;
   }
   file.close();
@@ -318,7 +318,7 @@ bool MacroList::load( const TQString& f, std::vector<Macro*>& ret, const KigPart
   else
   {
     KMessageBox::detailedSorry(
-      0, i18n( "Kig cannot open the macro file \"%1\"." ).arg( f ),
+      nullptr, i18n( "Kig cannot open the macro file \"%1\"." ).arg( f ),
       i18n( "This file was created by a very old Kig version (pre-0.4). "
             "Support for this format has been removed from recent Kig versions. "
             "You can try to import this macro using a previous Kig version "
@@ -351,7 +351,7 @@ bool MacroList::loadNew( const TQDomElement& docelem, std::vector<Macro*>& ret,
         ! macroelem.isNull(); macroelem = macroelem.nextSibling().toElement() )
   {
     TQString name, description;
-    ObjectHierarchy* hierarchy = 0;
+    ObjectHierarchy* hierarchy = nullptr;
     TQCString actionname, iconfile;
     if ( macroelem.tagName() != "Macro" ) continue; // forward compat ?
     for ( TQDomElement dataelem = macroelem.firstChild().toElement();
diff --git a/kig/misc/object_hierarchy.cpp b/kig/misc/object_hierarchy.cpp
index 7861c56e..d512ac47 100644
--- a/kig/misc/object_hierarchy.cpp
+++ b/kig/misc/object_hierarchy.cpp
@@ -259,7 +259,7 @@ std::vector<ObjectImp*> ObjectHierarchy::calc( const Args& a, const KigDocument&
     assert( a[i]->inherits( margrequirements[i] ) );
 
   std::vector<const ObjectImp*> stack;
-  stack.resize( mnodes.size() + mnumberofargs, 0 );
+  stack.resize( mnodes.size() + mnumberofargs, nullptr );
   std::copy( a.begin(), a.end(), stack.begin() );
   for( uint i = 0; i < mnodes.size(); ++i )
   {
@@ -479,7 +479,7 @@ ObjectHierarchy* ObjectHierarchy::buildSafeObjectHierarchy( const TQDomElement&
   { \
     error = i18n( "An error was encountered at line %1 in file %2." ) \
             .arg( __LINE__ ).arg( __FILE__ ); \
-    return 0; \
+    return nullptr; \
   }
 
   ObjectHierarchy* obhi = new ObjectHierarchy();
@@ -499,7 +499,7 @@ ObjectHierarchy* ObjectHierarchy::buildSafeObjectHierarchy( const TQDomElement&
 
     tmp = e.attribute( "requirement" );
     const ObjectImpType* req = ObjectImpType::typeFromInternalName( tmp.latin1() );
-    if ( req == 0 ) req = ObjectImp::stype(); // sucks, i know..
+    if ( !req ) req = ObjectImp::stype(); // sucks, i know..
     obhi->margrequirements.resize( obhi->mnumberofargs, ObjectImp::stype() );
     obhi->musetexts.resize( obhi->mnumberofargs, "" );
     obhi->mselectstatements.resize( obhi->mnumberofargs, "" );
@@ -532,7 +532,7 @@ ObjectHierarchy* ObjectHierarchy::buildSafeObjectHierarchy( const TQDomElement&
     if ( !ok ) KIG_GENERIC_PARSE_ERROR;
 
     tmp = e.attribute( "action" );
-    Node* newnode = 0;
+    Node* newnode = nullptr;
     if ( tmp == "calc" )
     {
       // ApplyTypeNode
@@ -545,7 +545,7 @@ ObjectHierarchy* ObjectHierarchy::buildSafeObjectHierarchy( const TQDomElement&
                       "Perhaps you have compiled Kig without support "
                       "for this object type,"
                       "or perhaps you are using an older Kig version." ).arg( TQString(typen) );
-        return 0;
+        return nullptr;
       }
 
       std::vector<int> parents;
@@ -576,7 +576,7 @@ ObjectHierarchy* ObjectHierarchy::buildSafeObjectHierarchy( const TQDomElement&
       TQString typen = e.attribute( "type" );
       if ( typen.isNull() ) KIG_GENERIC_PARSE_ERROR;
       ObjectImp* imp = ObjectImpFactory::instance()->deserialize( typen, e, error );
-      if ( ( ! imp ) && !error.isEmpty() ) return 0;
+      if ( ( ! imp ) && !error.isEmpty() ) return nullptr;
       newnode = new PushStackNode( imp );
     };
     obhi->mnodes.resize( kMax( size_t(id - obhi->mnumberofargs), obhi->mnodes.size() ) );
@@ -609,7 +609,7 @@ std::vector<ObjectCalcer*> ObjectHierarchy::buildObjects( const std::vector<Obje
     assert( os[i]->imp()->inherits( margrequirements[i] ) );
 
   std::vector<ObjectCalcer*> stack;
-  stack.resize( mnodes.size() + mnumberofargs, 0 );
+  stack.resize( mnodes.size() + mnumberofargs, nullptr );
   std::copy( os.begin(), os.end(), stack.begin() );
 
   for( uint i = 0; i < mnodes.size(); ++i )
diff --git a/kig/misc/special_constructors.cpp b/kig/misc/special_constructors.cpp
index c8137966..c0398621 100644
--- a/kig/misc/special_constructors.cpp
+++ b/kig/misc/special_constructors.cpp
@@ -125,7 +125,7 @@ void ConicRadicalConstructor::drawprelim(
       args.push_back( &zeroindex );
       ObjectImp* data = mtype->calc( args, doc );
       drawer.draw( *data, p, true );
-      delete data; data = 0;
+      delete data; data = nullptr;
       args.pop_back();
       args.pop_back();
     };
@@ -808,7 +808,7 @@ void PolygonBCVConstructor::drawprelim( const ObjectDrawer& drawer, KigPainter&
   ObjectImp* data = mtype->calc( args, doc );
   drawer.draw( *data, p, true );
   delete data;
-  data = 0;
+  data = nullptr;
 }
 
 void PolygonBCVConstructor::plug( KigPart*, KigGUIAction* )
diff --git a/kig/modes/base_mode.cpp b/kig/modes/base_mode.cpp
index 487eaf9e..850cf21d 100644
--- a/kig/modes/base_mode.cpp
+++ b/kig/modes/base_mode.cpp
@@ -76,7 +76,7 @@ void BaseMode::leftReleased( TQMouseEvent* e, KigWidget* v )
 {
   if( (mplc - e->pos()).manhattanLength() > 4 ) return;
 
-  ObjectHolder* o = 0;
+  ObjectHolder* o = nullptr;
   bool keyCtrl = ( e->state() & ControlButton ) != 0;
   bool keyShift = ( e->state() & ShiftButton ) != 0;
   if ( ! moco.empty() )
diff --git a/kig/modes/construct_mode.cpp b/kig/modes/construct_mode.cpp
index 378fc999..17648fae 100644
--- a/kig/modes/construct_mode.cpp
+++ b/kig/modes/construct_mode.cpp
@@ -67,7 +67,7 @@ void BaseConstructMode::leftReleased( TQMouseEvent* e, KigWidget* v )
 {
   if( (pointLocation() - e->pos()).manhattanLength() > 4 ) return;
 
-  ObjectHolder* o = 0;
+  ObjectHolder* o = nullptr;
   bool keyCtrlOrShift = ( e->state() & ( ControlButton | ShiftButton) ) != 0;
   std::vector<ObjectHolder*> moco = oco();
   if ( ! moco.empty() )
@@ -314,7 +314,7 @@ void PointConstructMode::leftClickedObject(
 
 void PointConstructMode::midClicked( const TQPoint& p, KigWidget& w )
 {
-  leftClickedObject( 0, p, w, true );
+  leftClickedObject( nullptr, p, w, true );
 }
 
 void PointConstructMode::rightClicked( const std::vector<ObjectHolder*>&, const TQPoint&,
diff --git a/kig/modes/label.cpp b/kig/modes/label.cpp
index 73d26808..f84403ff 100644
--- a/kig/modes/label.cpp
+++ b/kig/modes/label.cpp
@@ -90,7 +90,7 @@ TextLabelModeBase::~TextLabelModeBase()
 TextLabelModeBase::TextLabelModeBase( KigPart& doc )
   : KigMode( doc ), d( new Private )
 {
-  d->locationparent = 0;
+  d->locationparent = nullptr;
   d->lpc = 0;
   d->mwawd = SelectingLocation;
   d->wiz = new TextLabelWizard( doc.widget(), this );
@@ -212,7 +212,7 @@ void TextLabelModeBase::mouseMoved( TQMouseEvent* e, KigWidget* w )
   {
     std::vector<ObjectHolder*> os = mdoc.document().whatAmIOn( w->fromScreen( e->pos() ), *w );
     bool attachable = false;
-    d->locationparent = 0;
+    d->locationparent = nullptr;
     for ( std::vector<ObjectHolder*>::iterator i = os.begin(); i != os.end(); ++i )
     {
       if( (*i)->imp()->attachPoint().valid() ||
@@ -243,7 +243,7 @@ void TextLabelModeBase::mouseMoved( TQMouseEvent* e, KigWidget* w )
     else
     {
       w->setCursor( KCursor::crossCursor() );
-      mdoc.emitStatusBarText( 0 );
+      mdoc.emitStatusBarText( nullptr );
       w->updateWidget();
     };
   }
@@ -288,7 +288,7 @@ void TextLabelModeBase::finishPressed()
 
   bool finished = true;
   for ( argvect::iterator i = d->args.begin(); i != d->args.end(); ++i )
-    finished &= ( *i != 0 );
+    finished &= ( *i != nullptr );
 
   if ( ! finished )
     KMessageBox::sorry( mdoc.widget(),
@@ -311,7 +311,7 @@ void TextLabelModeBase::updateWiz()
   }
   else if ( d->lpc < percentcount )
   {
-    d->args.resize( percentcount, 0 );
+    d->args.resize( percentcount, nullptr );
   };
 
   if ( percentcount == 0 && ! s.isEmpty() )
@@ -327,7 +327,7 @@ void TextLabelModeBase::updateWiz()
     d->wiz->setFinishEnabled( d->wiz->enter_text_page, false );
     bool finished = true;
     for ( argvect::iterator i = d->args.begin(); i != d->args.end(); ++i )
-      finished &= ( *i != 0 );
+      finished &= ( *i != nullptr );
     assert( percentCount( s ) == d->args.size() );
 
     d->wiz->setFinishEnabled( d->wiz->select_arguments_page, finished );
@@ -459,7 +459,7 @@ void TextLabelConstructionMode::finish(
         i != props.end(); ++i )
     args.push_back( i->get() );
 
-  ObjectHolder* label = 0;
+  ObjectHolder* label = nullptr;
   if ( locationparent )
     label = ObjectFactory::instance()->attachedLabel( s, locationparent, coord, needframe, args, mdoc.document() );
   else
diff --git a/kig/modes/linkslabel.h b/kig/modes/linkslabel.h
index cb556a70..47d532ae 100644
--- a/kig/modes/linkslabel.h
+++ b/kig/modes/linkslabel.h
@@ -33,7 +33,7 @@ class LinksLabel : public TQWidget
   
 
 public:
-  LinksLabel( TQWidget* parent = 0, const char* name = 0 );
+  LinksLabel( TQWidget* parent = nullptr, const char* name = nullptr );
   ~LinksLabel();
 
   class LinksLabelEditBuf
diff --git a/kig/modes/macro.cpp b/kig/modes/macro.cpp
index be69d80b..ed70fc86 100644
--- a/kig/modes/macro.cpp
+++ b/kig/modes/macro.cpp
@@ -211,7 +211,7 @@ void DefineMacroMode::mouseMoved( const std::vector<ObjectHolder*>& os, const TQ
   if ( os.empty() )
   {
     w.setCursor( KCursor::arrowCursor() );
-    mdoc.emitStatusBarText( 0 );
+    mdoc.emitStatusBarText( nullptr );
     w.updateWidget();
   }
   else
diff --git a/kig/modes/mode.cpp b/kig/modes/mode.cpp
index dbc6f7d6..1586da16 100644
--- a/kig/modes/mode.cpp
+++ b/kig/modes/mode.cpp
@@ -117,7 +117,7 @@ void KigMode::redrawScreen( KigWidget* )
 
 StdConstructionMode* KigMode::toStdConstructionMode()
 {
-  return 0;
+  return nullptr;
 }
 
 void KigMode::selectAll()
diff --git a/kig/modes/moving.cpp b/kig/modes/moving.cpp
index d7d07e89..5904eb44 100644
--- a/kig/modes/moving.cpp
+++ b/kig/modes/moving.cpp
@@ -172,7 +172,7 @@ void MovingMode::moveTo( const Coordinate& o, bool snaptogrid )
 }
 
 PointRedefineMode::PointRedefineMode( ObjectHolder* p, KigPart& d, KigWidget& v )
-  : MovingModeBase( d, v ), mp( p ), mmon( 0 )
+  : MovingModeBase( d, v ), mp( p ), mmon( nullptr )
 {
   assert( dynamic_cast<ObjectTypeCalcer*>( p->calcer() ) );
   moldtype = static_cast<ObjectTypeCalcer*>( p->calcer() )->type();
diff --git a/kig/modes/normal.cpp b/kig/modes/normal.cpp
index b91db417..6c1b2782 100644
--- a/kig/modes/normal.cpp
+++ b/kig/modes/normal.cpp
@@ -222,7 +222,7 @@ void NormalMode::rightClicked( const std::vector<ObjectHolder*>& os,
   TQPoint pt = TQCursor::pos();
   if( !os.empty() )
   {
-    ObjectHolder* o = 0;
+    ObjectHolder* o = nullptr;
     int id = ObjectChooserPopup::getObjectFromList( pt, &w, os );
     if ( id >= 0 )
       o = os[id];
@@ -254,7 +254,7 @@ void NormalMode::mouseMoved( const std::vector<ObjectHolder*>& os,
   if( os.empty() )
   {
     w.setCursor( KCursor::arrowCursor() );
-    mdoc.emitStatusBarText( 0 );
+    mdoc.emitStatusBarText( nullptr );
     w.updateWidget();
   }
   else
diff --git a/kig/modes/popup.cpp b/kig/modes/popup.cpp
index 21ba7626..ac26f27e 100644
--- a/kig/modes/popup.cpp
+++ b/kig/modes/popup.cpp
@@ -303,7 +303,7 @@ NormalModePopupObjects::NormalModePopupObjects( KigPart& part,
     else
     {
       TDEIconLoader* l = part.instance()->iconLoader();
-      TQPixmap icon = l->loadIcon( menuicons[i], TDEIcon::Small, 22, TDEIcon::DefaultState, 0L, true );
+      TQPixmap icon = l->loadIcon( menuicons[i], TDEIcon::Small, 22, TDEIcon::DefaultState, nullptr, true );
       insertItem( TQIconSet( icon ), menunames[i], mmenus[i], i, index++ );
     }
   };
@@ -508,7 +508,7 @@ static void addNameLabel( ObjectCalcer* object, ObjectCalcer* namecalcer, const
   std::vector<ObjectCalcer*> args;
   args.push_back( namecalcer );
   const bool namelabelneedsframe = false;
-  ObjectCalcer* attachto = 0;
+  ObjectCalcer* attachto = nullptr;
   if ( object->imp()->inherits( PointImp::stype() ) || 
        object->imp()->attachPoint().valid() || 
        object->imp()->inherits( CurveImp::stype() ) )
@@ -536,7 +536,7 @@ bool NameObjectActionsProvider::executeAction(
     TQRegExpValidator* rev = new TQRegExpValidator(  re,  &doc );
     TQString caption = i18n( "Set Object Name" );
     TQString label = i18n( "Set Name of this Object:" );
-    name = KInputDialog::getText( caption, label, name, &ok, &w, 0, rev );
+    name = KInputDialog::getText( caption, label, name, &ok, &w, nullptr, rev );
     if ( ok )
     {
       bool justadded = false;
@@ -748,7 +748,7 @@ void ObjectConstructorActionsProvider::fillUpMenu( NormalModePopupObjects& popup
       TQCString iconfile = (*i)->iconFileName();
       if ( !iconfile.isEmpty() && !iconfile.isNull() )
       {
-        TQPixmap icon = popup.part().instance()->iconLoader()->loadIcon( iconfile, TDEIcon::Toolbar, 22, TDEIcon::DefaultState, 0L, true );
+        TQPixmap icon = popup.part().instance()->iconLoader()->loadIcon( iconfile, TDEIcon::Toolbar, 22, TDEIcon::DefaultState, nullptr, true );
         popup.addAction( menu, icon, (*i)->descriptiveName(), nextfree++ );
       }
       else
@@ -788,7 +788,7 @@ bool ObjectConstructorActionsProvider::executeAction(
 
 void NormalModePopupObjects::addAction( int menu, const TQPixmap& pix, int id )
 {
-  TQPopupMenu* m = 0;
+  TQPopupMenu* m = nullptr;
   if ( menu == ToplevelMenu ) m = this;
   else m = mmenus[menu];
   int ret = m->insertItem( pix, id );
@@ -819,7 +819,7 @@ void NormalModePopupObjects::setCoordinateSystemMenuSlot( int i )
 
 void NormalModePopupObjects::addAction( int menu, const TQPixmap& icon, const TQString& name, int id )
 {
-  TQPopupMenu* m = 0;
+  TQPopupMenu* m = nullptr;
   if ( menu == ToplevelMenu ) m = this;
   else m = mmenus[menu];
   int ret = m->insertItem( TQIconSet( icon ), name, id );
@@ -830,7 +830,7 @@ void NormalModePopupObjects::addAction( int menu, const TQPixmap& icon, const TQ
 
 void NormalModePopupObjects::addAction( int menu, const TQString& name, int id )
 {
-  TQPopupMenu* m = 0;
+  TQPopupMenu* m = nullptr;
   if ( menu == ToplevelMenu ) m = this;
   else m = mmenus[menu];
   int ret = m->insertItem( name, id );
@@ -873,7 +873,7 @@ void PropertiesActionsProvider::fillUpMenu( NormalModePopupObjects& popup,
     {
       if ( iconfile && *iconfile )
       {
-        TQPixmap pix = popup.part().instance()->iconLoader()->loadIcon( iconfile, TDEIcon::Toolbar, 22, TDEIcon::DefaultState, 0L, true );
+        TQPixmap pix = popup.part().instance()->iconLoader()->loadIcon( iconfile, TDEIcon::Toolbar, 22, TDEIcon::DefaultState, nullptr, true );
         popup.addAction( menu, pix, i18n( o->imp()->properties()[i] ), nextfree++ );
       }
       else
@@ -1150,7 +1150,7 @@ int ObjectChooserPopup::getObjectFromList( const TQPoint& p, KigWidget* w,
       id = ppp->mselected;
 
       delete ppp;
-      ppp = 0;
+      ppp = nullptr;
     }
     else
     {
diff --git a/kig/objects/line_imp.cpp b/kig/objects/line_imp.cpp
index 4223000b..88e97a92 100644
--- a/kig/objects/line_imp.cpp
+++ b/kig/objects/line_imp.cpp
@@ -437,7 +437,7 @@ const ObjectImpType* AbstractLineImp::stype()
 {
   static const ObjectImpType t(
     Parent::stype(), "line", I18N_NOOP( "line" ),
-    I18N_NOOP( "Select a Line" ), 0, 0, 0, 0, 0, 0, 0 );
+    I18N_NOOP( "Select a Line" ), nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr );
   return &t;
 }
 
diff --git a/kig/objects/object_calcer.cpp b/kig/objects/object_calcer.cpp
index b15766bc..66b643c6 100644
--- a/kig/objects/object_calcer.cpp
+++ b/kig/objects/object_calcer.cpp
@@ -39,7 +39,7 @@ void ObjectTypeCalcer::calc( const KigDocument& doc )
 
 ObjectTypeCalcer::ObjectTypeCalcer( const ObjectType* type, 
       const std::vector<ObjectCalcer*>& parents, bool sort )
-  : mparents( ( sort )?type->sortArgs( parents ):parents ), mtype( type ), mimp( 0 )
+  : mparents( ( sort )?type->sortArgs( parents ):parents ), mtype( type ), mimp( nullptr )
 {
   std::for_each( mparents.begin(), mparents.end(),
                  std::bind( std::mem_fn( &ObjectCalcer::addChild ), std::placeholders::_1, this ) );
@@ -132,7 +132,7 @@ const ObjectType* ObjectTypeCalcer::type() const
 }
 
 ObjectPropertyCalcer::ObjectPropertyCalcer( ObjectCalcer* parent, int propid )
-  : mimp( 0 ), mparent( parent ), mpropid( propid )
+  : mimp( nullptr ), mparent( parent ), mpropid( propid )
 {
   // Some weird C++ thing prevents me from calling protected members
   // of ObjectCalcer on mparent.. This is an ugly workaround..
diff --git a/kig/objects/object_factory.cpp b/kig/objects/object_factory.cpp
index 7235e834..e95633a8 100644
--- a/kig/objects/object_factory.cpp
+++ b/kig/objects/object_factory.cpp
@@ -164,7 +164,7 @@ ObjectTypeCalcer* ObjectFactory::locusCalcer(
 
   ObjectHierarchy hier( hierparents, moving );
 
-  std::vector<ObjectCalcer*> realparents( 2 + sideOfTree.size(), 0 );
+  std::vector<ObjectCalcer*> realparents( 2 + sideOfTree.size(), nullptr );
   realparents[0] = new ObjectConstCalcer( new HierarchyImp( hier ) );
   realparents[1] = curve;
   copy( sideOfTree.begin(), sideOfTree.end(), realparents.begin() + 2 );
@@ -190,7 +190,7 @@ ObjectTypeCalcer* ObjectFactory::labelCalcer(
  bool needframe, const std::vector<ObjectCalcer*>& parents,
  const KigDocument& doc ) const
 {
-  return attachedLabelCalcer( s, 0, loc, needframe, parents, doc );
+  return attachedLabelCalcer( s, nullptr, loc, needframe, parents, doc );
 }
 
 ObjectTypeCalcer* ObjectFactory::attachedLabelCalcer(
@@ -278,7 +278,7 @@ ObjectPropertyCalcer* ObjectFactory::propertyObjectCalcer(
   ObjectCalcer* o, const char* p ) const
 {
   int wp = o->imp()->propertiesInternalNames().findIndex( p );
-  if ( wp == -1 ) return 0;
+  if ( wp == -1 ) return nullptr;
   return new ObjectPropertyCalcer( o, wp );
 }
 
@@ -297,7 +297,7 @@ void ObjectFactory::redefinePoint(
   ObjectCalcer* (ObjectHolder::*calcmeth)() = &ObjectHolder::calcer;
   std::transform( hos.begin(), hos.end(), std::back_inserter( os ),
                   std::mem_fn( calcmeth ) );
-  ObjectCalcer* v = 0;
+  ObjectCalcer* v = nullptr;
 
   // we don't want one of our children as a parent...
   std::set<ObjectCalcer*> children = getAllChildren( point );
@@ -320,7 +320,7 @@ void ObjectFactory::redefinePoint(
     {
       // point already was constrained -> simply update the param
       // DataObject and make sure point is on the right curve...
-      ObjectCalcer* dataobj = 0;
+      ObjectCalcer* dataobj = nullptr;
       std::vector<ObjectCalcer*> parents = point->parents();
       assert( parents.size() == 2 );
       assert ( parents[0]->imp()->inherits( DoubleImp::stype() ) );
diff --git a/kig/objects/object_holder.cpp b/kig/objects/object_holder.cpp
index cdf06396..316aab09 100644
--- a/kig/objects/object_holder.cpp
+++ b/kig/objects/object_holder.cpp
@@ -24,7 +24,7 @@
 #include "../misc/coordinate.h"
 
 ObjectHolder::ObjectHolder( ObjectCalcer* calcer )
-  : mcalcer( calcer ), mdrawer( new ObjectDrawer ), mnamecalcer( 0 )
+  : mcalcer( calcer ), mdrawer( new ObjectDrawer ), mnamecalcer( nullptr )
 {
 }
 
@@ -36,7 +36,7 @@ ObjectHolder::ObjectHolder( ObjectCalcer* calcer, ObjectDrawer* drawer,
 }
 
 ObjectHolder::ObjectHolder( ObjectCalcer* calcer, ObjectDrawer* drawer )
-  : mcalcer( calcer ), mdrawer( drawer ), mnamecalcer( 0 )
+  : mcalcer( calcer ), mdrawer( drawer ), mnamecalcer( nullptr )
 {
 }
 
diff --git a/kig/objects/object_imp.cpp b/kig/objects/object_imp.cpp
index 1f7ad798..525c3a8b 100644
--- a/kig/objects/object_imp.cpp
+++ b/kig/objects/object_imp.cpp
@@ -250,7 +250,7 @@ const ObjectImpType* ObjectImpType::typeFromInternalName( const char* string )
   TQCString s( string );
   std::map<TQCString, const ObjectImpType*>::iterator i = sd()->namemap.find( s );
   if ( i == sd()->namemap.end() )
-    return 0;
+    return nullptr;
   else return i->second;
 }
 
@@ -262,7 +262,7 @@ bool ObjectImp::inherits( const ObjectImpType* t ) const
 const ObjectImpType* ObjectImp::stype()
 {
   static const ObjectImpType t(
-    0, "any",
+    nullptr, "any",
     I18N_NOOP( "Object" ),
     I18N_NOOP( "Select this object" ),
     I18N_NOOP( "Select object %1" ),
diff --git a/kig/objects/object_imp_factory.cpp b/kig/objects/object_imp_factory.cpp
index dd184295..75b23181 100644
--- a/kig/objects/object_imp_factory.cpp
+++ b/kig/objects/object_imp_factory.cpp
@@ -292,7 +292,7 @@ ObjectImp* ObjectImpFactory::deserialize( const TQString& type,
   { \
     error = i18n( "An error was encountered at line %1 in file %2." ) \
             .arg( __LINE__ ).arg( __FILE__ ); \
-    return 0; \
+    return nullptr; \
   }
 
   bool ok = true;
@@ -319,7 +319,7 @@ ObjectImp* ObjectImpFactory::deserialize( const TQString& type,
   else if ( type == "hierarchy" )
   {
     ObjectHierarchy* hier = ObjectHierarchy::buildSafeObjectHierarchy( parent, error );
-    if ( ! hier ) return 0;
+    if ( ! hier ) return nullptr;
     HierarchyImp* imp = new HierarchyImp( *hier );
     delete hier;
     return imp;
@@ -505,6 +505,6 @@ ObjectImp* ObjectImpFactory::deserialize( const TQString& type,
                 "Perhaps you have compiled Kig without support "
                 "for this object type,"
                 "or perhaps you are using an older Kig version." ).arg( type );
-  return 0;
+  return nullptr;
 }
 
diff --git a/kig/objects/object_type_factory.cpp b/kig/objects/object_type_factory.cpp
index a6d527ce..93709850 100644
--- a/kig/objects/object_type_factory.cpp
+++ b/kig/objects/object_type_factory.cpp
@@ -63,7 +63,7 @@ void ObjectTypeFactory::add( const ObjectType* type )
 const ObjectType* ObjectTypeFactory::find( const char* name ) const
 {
   maptype::const_iterator i = mmap.find( std::string( name ) );
-  if ( i == mmap.end() ) return 0;
+  if ( i == mmap.end() ) return nullptr;
   else return i->second;
 }
 
diff --git a/kig/objects/point_imp.cpp b/kig/objects/point_imp.cpp
index 4cc4168c..3f7f86b0 100644
--- a/kig/objects/point_imp.cpp
+++ b/kig/objects/point_imp.cpp
@@ -203,7 +203,7 @@ BogusPointImp::~BogusPointImp()
 const ObjectImpType* BogusPointImp::stype()
 {
   static const ObjectImpType t(
-    0, "boguspoint",
+    nullptr, "boguspoint",
     "SHOULDNOTBESEEN",
     "SHOULDNOTBESEEN",
     "SHOULDNOTBESEEN",
diff --git a/kig/objects/point_type.cpp b/kig/objects/point_type.cpp
index 59f495b9..759d3120 100644
--- a/kig/objects/point_type.cpp
+++ b/kig/objects/point_type.cpp
@@ -337,7 +337,7 @@ const ObjectImpType* CursorPointType::impRequirement( const ObjectImp* o, const
   if ( o->inherits( PointImp::stype() ) )
     return PointImp::stype();
 
-  return 0;
+  return nullptr;
 }
 
 bool CursorPointType::isDefinedOnOrThrough( const ObjectImp*, const Args& ) const
@@ -585,7 +585,7 @@ const ObjectImpType* MeasureTransportType::impRequirement( const ObjectImp* obj,
   if ( obj->inherits( ArcImp::stype () ) )
     return ArcImp::stype ();
 
-  return 0;
+  return nullptr;
 }
 
 bool MeasureTransportType::isDefinedOnOrThrough( const ObjectImp* o, const Args& ) const
diff --git a/kig/objects/polygon_imp.cpp b/kig/objects/polygon_imp.cpp
index 43ee16f9..b131e1b9 100644
--- a/kig/objects/polygon_imp.cpp
+++ b/kig/objects/polygon_imp.cpp
@@ -187,12 +187,12 @@ bool PolygonImp::inRect( const Rect& r, int width, const KigWidget& w ) const
     SegmentImp* s = new SegmentImp( mpoints[i], mpoints[i+1] );
     ret |= lineInRect( r, mpoints[i], mpoints[i+1], width, s, w );
     delete s;
-    s = 0;
+    s = nullptr;
   }
   SegmentImp* t = new SegmentImp( mpoints[reduceddim], mpoints[0] );
   ret |= lineInRect( r, mpoints[reduceddim], mpoints[0], width, t, w );
   delete t;
-  t = 0;
+  t = nullptr;
 
   return ret;
 }
diff --git a/kig/objects/polygon_type.cpp b/kig/objects/polygon_type.cpp
index cd1fb544..3e825b4d 100644
--- a/kig/objects/polygon_type.cpp
+++ b/kig/objects/polygon_type.cpp
@@ -334,7 +334,7 @@ const ObjectImpType* PolygonBCVType::impRequirement( const ObjectImp* obj, const
   if ( obj->inherits( IntImp::stype() ) )
     return IntImp::stype();
 
-  return 0;
+  return nullptr;
 }
 
 bool PolygonBCVType::isDefinedOnOrThrough( const ObjectImp*, const Args& ) const
diff --git a/kiten/asyndeta.cpp b/kiten/asyndeta.cpp
index 67ae4633..d730dda0 100644
--- a/kiten/asyndeta.cpp
+++ b/kiten/asyndeta.cpp
@@ -29,7 +29,7 @@
 #include "dict.h"
 
 int Asyndeta::refCount = 0;
-Dict::Index *Asyndeta::index = 0;
+Dict::Index *Asyndeta::index = nullptr;
 
 Asyndeta::Asyndeta()
 {
@@ -48,7 +48,7 @@ Asyndeta::~Asyndeta()
 	if (refCount == 0)
 	{
 		delete index;
-		index = 0;
+		index = nullptr;
 	}
 }
 
diff --git a/kiten/configdictionaries.h b/kiten/configdictionaries.h
index 4629ab5d..fccfcfa2 100644
--- a/kiten/configdictionaries.h
+++ b/kiten/configdictionaries.h
@@ -29,7 +29,7 @@ class ConfigDictionaries : public ConfigDictionariesBase
 	TQ_OBJECT
   
 public:
-	ConfigDictionaries(TQWidget *parent = 0, const char* name = 0, WFlags f = 0);
+	ConfigDictionaries(TQWidget *parent = nullptr, const char* name = nullptr, WFlags f = 0);
 	void readDictionaries();
         
 	// TDEConfig stuff
diff --git a/kiten/deinf.cpp b/kiten/deinf.cpp
index 78a51e00..e64f944c 100644
--- a/kiten/deinf.cpp
+++ b/kiten/deinf.cpp
@@ -41,7 +41,7 @@ void Deinf::Index::load()
 	TQString vconj = dirs->findResource("data", "kiten/vconj");
 	if (vconj.isNull())
 	{
-		KMessageBox::error(0, i18n("Verb deinflection information not found, so verb deinflection cannot be used."));
+		KMessageBox::error(nullptr, i18n("Verb deinflection information not found, so verb deinflection cannot be used."));
 		return;
 	}
 
@@ -49,7 +49,7 @@ void Deinf::Index::load()
 
 	if (!f.open(IO_ReadOnly))
 	{
-		KMessageBox::error(0, i18n("Verb deinflection information could not be loaded, so verb deinflection cannot be used."));
+		KMessageBox::error(nullptr, i18n("Verb deinflection information could not be loaded, so verb deinflection cannot be used."));
 		return;
 	}
 
diff --git a/kiten/dict.cpp b/kiten/dict.cpp
index bdb7e0b8..12668297 100644
--- a/kiten/dict.cpp
+++ b/kiten/dict.cpp
@@ -42,7 +42,7 @@ void msgerr(const TQString &msg, const TQString &dict = TQString())
 	TQString output = msg;
 	if (!dict.isNull())
 		output = msg.arg(dict);
-	KMessageBox::error(0, output);
+	KMessageBox::error(nullptr, output);
 }
 }
 
@@ -116,7 +116,7 @@ File::File(TQString path, TQString n)
 		return;
 	}
 
-	dictPtr = (const unsigned char *)mmap(0, dictFile.size(), PROT_READ, MAP_SHARED, dictFile.handle(), 0);
+	dictPtr = (const unsigned char *)mmap(nullptr, dictFile.size(), PROT_READ, MAP_SHARED, dictFile.handle(), 0);
 	if (dictPtr == (unsigned char*) MAP_FAILED)
 	{
 		msgerr(i18n("Memory error when loading dictionary %1."), path);
@@ -129,7 +129,7 @@ File::File(TQString path, TQString n)
 		return;
 	}
 
-	indexPtr = (const uint32_t*)mmap(0, indexFile.size(), PROT_READ, MAP_SHARED, indexFile.handle(), 0);
+	indexPtr = (const uint32_t*)mmap(nullptr, indexFile.size(), PROT_READ, MAP_SHARED, indexFile.handle(), 0);
 	if (indexPtr == (uint32_t*) MAP_FAILED)
 	{
 		msgerr(i18n("Memory error when loading dictionary %1's index file."), path);
diff --git a/kiten/kiten.cpp b/kiten/kiten.cpp
index df4e168c..cc5f234b 100644
--- a/kiten/kiten.cpp
+++ b/kiten/kiten.cpp
@@ -84,7 +84,7 @@ TopLevel::TopLevel(TQWidget *parent, const char *name) : TDEMainWindow(parent, n
 	addAction->setEnabled(false);
 	(void) new TDEAction(i18n("Configure &Global Shortcuts..."), "configure_shortcuts", 0, this, TQ_SLOT(configureGlobalKeys()), actionCollection(), "options_configure_keybinding");
 
-	historyAction = new TDEListAction(i18n("&History"), 0, 0, 0, actionCollection(), "history");
+	historyAction = new TDEListAction(i18n("&History"), 0, nullptr, nullptr, actionCollection(), "history");
 	connect(historyAction, TQ_SIGNAL(activated(int)), this, TQ_SLOT(goInHistory(int)));
 	backAction = KStdAction::back(this, TQ_SLOT(back()), actionCollection());
 	forwardAction = KStdAction::forward(this, TQ_SLOT(forward()), actionCollection());
@@ -96,7 +96,7 @@ TopLevel::TopLevel(TQWidget *parent, const char *name) : TDEMainWindow(parent, n
 	createGUI();
 
 	StatusBar = statusBar();
-	optionDialog = 0;
+	optionDialog = nullptr;
 
 	comCB->setChecked(config->com());
 	kanjiCB->setChecked(config->kanji());
@@ -120,7 +120,7 @@ TopLevel::TopLevel(TQWidget *parent, const char *name) : TDEMainWindow(parent, n
 TopLevel::~TopLevel()
 {
     delete optionDialog;
-    optionDialog = 0;
+    optionDialog = nullptr;
 }
 
 void TopLevel::finishInit()
@@ -627,16 +627,16 @@ void TopLevel::slotConfigureHide()
 
 void TopLevel::slotConfigureDestroy()
 {
-	if (optionDialog != 0 && optionDialog->isVisible() == 0)
+	if (optionDialog != nullptr && optionDialog->isVisible() == 0)
 	{
 		delete optionDialog;
-		optionDialog = 0;
+		optionDialog = nullptr;
 	}
 }
 
 void TopLevel::createLearn()
 {
-	Learn *_Learn = new Learn(_Asyndeta.retrieveIndex(), 0);
+	Learn *_Learn = new Learn(_Asyndeta.retrieveIndex(), nullptr);
 
 	connect(_Learn, TQ_SIGNAL(destroyed(Learn *)), this, TQ_SLOT(learnDestroyed(Learn *)));
 	connect(_Learn, TQ_SIGNAL(linkClicked(const TQString &)), this, TQ_SLOT(ressearch(const TQString &)));
@@ -739,7 +739,7 @@ void TopLevel::newToolBarConfig()
 
 RadWidget *TopLevel::radicalSearch()
 {
-	RadWidget *rw = new RadWidget(&_Rad, 0, "rw");
+	RadWidget *rw = new RadWidget(&_Rad, nullptr, "rw");
 	connect(rw, TQ_SIGNAL(set(const TQStringList &, unsigned int, unsigned int)), this, TQ_SLOT(radSearch(const TQStringList &, unsigned int, unsigned int)));
 	rw->show();
 	return rw;
diff --git a/kiten/kiten.h b/kiten/kiten.h
index 728b0fee..7be6ad19 100644
--- a/kiten/kiten.h
+++ b/kiten/kiten.h
@@ -44,7 +44,7 @@ class TDE_EXPORT TopLevel : public TDEMainWindow
   
 
 public:
-	TopLevel(TQWidget *parent = 0, const char *name = 0);
+	TopLevel(TQWidget *parent = nullptr, const char *name = nullptr);
     ~TopLevel();
 
 signals:
diff --git a/kiten/kloader.cpp b/kiten/kloader.cpp
index 95462474..e5ee55f3 100644
--- a/kiten/kloader.cpp
+++ b/kiten/kloader.cpp
@@ -35,7 +35,7 @@
 class KLoader::KLoaderPrivate
 {
 public:
-	KLoaderPrivate() : isLocal(true), file(0), textStream(0), dataStream(0) {}
+	KLoaderPrivate() : isLocal(true), file(nullptr), textStream(nullptr), dataStream(nullptr) {}
     ~KLoaderPrivate()
         {
             delete file;
@@ -103,11 +103,11 @@ bool KLoader::open(void)
 
 void KLoader::close(void)
 {
-	d->textStream = 0;
-	d->dataStream = 0;
+	d->textStream = nullptr;
+	d->dataStream = nullptr;
 
 	delete d->file;
-	d->file = 0;
+	d->file = nullptr;
 
 	if(!d->isLocal)
 		TDEIO::NetAccess::removeTempFile(d->tempFile);
@@ -123,7 +123,7 @@ TQFile &KLoader::file(void)
 	if(d->file)
 		return *d->file;
 	else
-		return *static_cast<TQFile *>(0);
+		return *static_cast<TQFile *>(nullptr);
 }
 
 TQTextStream &KLoader::textStream()
@@ -139,7 +139,7 @@ TQTextStream &KLoader::textStream()
 	}
 	else
 	{
-		return *static_cast<TQTextStream *>(0);
+		return *static_cast<TQTextStream *>(nullptr);
 	}
 }
 
@@ -156,6 +156,6 @@ TQDataStream &KLoader::dataStream()
 	}
 	else
 	{
-		return *static_cast<TQDataStream *>(0);
+		return *static_cast<TQDataStream *>(nullptr);
 	}
 }
diff --git a/kiten/kromajiedit.cpp b/kiten/kromajiedit.cpp
index 8c219784..8fc17ac8 100644
--- a/kiten/kromajiedit.cpp
+++ b/kiten/kromajiedit.cpp
@@ -37,7 +37,7 @@ KRomajiEdit::KRomajiEdit(TQWidget *parent, const char *name)
 	TQString romkana = dirs->findResource("data", "kiten/romkana.cnv");
 	if (romkana.isNull())
 	{
-		KMessageBox::error(0, i18n("Romaji information file not installed, so Romaji conversion cannot be used."));
+		KMessageBox::error(nullptr, i18n("Romaji information file not installed, so Romaji conversion cannot be used."));
 		return;
 	}
 
@@ -45,7 +45,7 @@ KRomajiEdit::KRomajiEdit(TQWidget *parent, const char *name)
 	
 	if (!f.open(IO_ReadOnly))
 	{
-		KMessageBox::error(0, i18n("Romaji information could not be loaded, so Romaji conversion cannot be used."));
+		KMessageBox::error(nullptr, i18n("Romaji information could not be loaded, so Romaji conversion cannot be used."));
 	}
 
 	TQTextStream t(&f);
diff --git a/kiten/ksaver.cpp b/kiten/ksaver.cpp
index 60ae364d..d1945e73 100644
--- a/kiten/ksaver.cpp
+++ b/kiten/ksaver.cpp
@@ -36,7 +36,7 @@
 class KSaver::KSaverPrivate
 {
 public:
-	KSaverPrivate() : isLocal(true), tempFile(0), file(0), textStream(0), dataStream(0) {}
+	KSaverPrivate() : isLocal(true), tempFile(nullptr), file(nullptr), textStream(nullptr), dataStream(nullptr) {}
     ~KSaverPrivate()
         {
             delete file;
@@ -99,17 +99,17 @@ bool KSaver::open(void)
 bool KSaver::close(void)
 {
 	if(d->textStream)
-		d->textStream = 0;
+		d->textStream = nullptr;
 
 	if(d->dataStream)
-		d->dataStream = 0;
+		d->dataStream = nullptr;
 
 	if(d->isLocal)
 	{
 		if(!d->file) return true;
 
 		delete d->file;
-		d->file = 0;
+		d->file = nullptr;
 		return true;
 	}
 	else
@@ -118,10 +118,10 @@ bool KSaver::close(void)
 
 		d->tempFile->close();
 
-		bool retval = TDEIO::NetAccess::upload(d->tempFile->name(), d->url, 0);
+		bool retval = TDEIO::NetAccess::upload(d->tempFile->name(), d->url, nullptr);
 
 		delete d->tempFile;
-		d->tempFile = 0;
+		d->tempFile = nullptr;
 
 		return retval;
 	}
@@ -139,7 +139,7 @@ TQFile &KSaver::file(void)
 	else if(!d->isLocal && d->tempFile)
 		return *d->tempFile->file();
 	else
-		return *static_cast<TQFile *>(0);
+		return *static_cast<TQFile *>(nullptr);
 }
 
 TQTextStream &KSaver::textStream()
@@ -160,7 +160,7 @@ TQTextStream &KSaver::textStream()
 	}
 	else
 	{
-		return *static_cast<TQTextStream *>(0);
+		return *static_cast<TQTextStream *>(nullptr);
 	}
 }
 
@@ -182,6 +182,6 @@ TQDataStream &KSaver::dataStream()
 	}
 	else
 	{
-		return *static_cast<TQDataStream *>(0);
+		return *static_cast<TQDataStream *>(nullptr);
 	}
 }
diff --git a/kiten/learn.cpp b/kiten/learn.cpp
index cb647aa1..fd893c86 100644
--- a/kiten/learn.cpp
+++ b/kiten/learn.cpp
@@ -61,7 +61,7 @@ int LearnItem::compare(TQListViewItem *item, int col, bool ascending) const
 const int Learn::numberOfAnswers = 5;
 
 Learn::Learn(Dict::Index *parentDict, TQWidget *parent, const char *name)
-	: TDEMainWindow(parent, name), initialized(false), isMod(false), prevItem(0), curItem(0)
+	: TDEMainWindow(parent, name), initialized(false), isMod(false), prevItem(nullptr), curItem(nullptr)
 {
 	index = parentDict;
 
@@ -121,7 +121,7 @@ Learn::Learn(Dict::Index *parentDict, TQWidget *parent, const char *name)
 	backAct->plug(toolBar());
 	cheatAct = new TDEAction(i18n("&Cheat"), CTRL + Key_C, this, TQ_SLOT(cheat()), actionCollection(), "cheat");
 	randomAct = new TDEAction(i18n("&Random"), "goto", CTRL + Key_R, this, TQ_SLOT(random()), actionCollection(), "random");
-	gradeAct = new TDEListAction(i18n("Grade"), 0, 0, 0, actionCollection(), "grade");
+	gradeAct = new TDEListAction(i18n("Grade"), 0, nullptr, nullptr, actionCollection(), "grade");
 	gradeAct->setItems(grades);
 	connect(gradeAct, TQ_SIGNAL(activated(const TQString&)), TQ_SLOT(updateGrade()));
 	removeAct = new TDEAction(i18n("&Delete"), "edit_remove", CTRL + Key_X, this, TQ_SLOT(del()), actionCollection(), "del");
@@ -849,7 +849,7 @@ void Learn::tabChanged(TQWidget *widget)
 	bool isQuiz = (widget == quizTop);
 
 	if (isQuiz)
-		backAct->setEnabled(prevItem != 0);
+		backAct->setEnabled(prevItem != nullptr);
 	else
 		backAct->setEnabled(true);
 
diff --git a/kiten/learn.h b/kiten/learn.h
index 08928a56..9f3f0b95 100644
--- a/kiten/learn.h
+++ b/kiten/learn.h
@@ -49,7 +49,7 @@ class Learn : public TDEMainWindow
   
 	
 	public:
-	Learn(Dict::Index *, TQWidget *parent = 0, const char *name = 0);
+	Learn(Dict::Index *, TQWidget *parent = nullptr, const char *name = nullptr);
 	~Learn();
 
 	bool closeWindow();
diff --git a/kiten/main.cpp b/kiten/main.cpp
index 0fc18b5f..26641af7 100644
--- a/kiten/main.cpp
+++ b/kiten/main.cpp
@@ -42,7 +42,7 @@ int main(int argc, char *argv[])
 	qInstallMsgHandler(noMessageOutput);
 	TDEAboutData aboutData( "kiten", I18N_NOOP("Kiten"),
 	  "1.2", I18N_NOOP("Japanese Reference Tool"), TDEAboutData::License_GPL,
-	  "(c) 2001-2004, Jason Katz-Brown", 0, "http://www.katzbrown.com/kiten");
+	  "(c) 2001-2004, Jason Katz-Brown", nullptr, "http://www.katzbrown.com/kiten");
 
 	aboutData.addAuthor("Jason Katz-Brown", I18N_NOOP("Original author"), "jason@katzbrown.com");
 	aboutData.addCredit("Jim Breen", I18N_NOOP("Wrote xjdic, of which Kiten borrows code, and the xjdic index file generator.\nAlso is main author of edict and kanjidic, which Kiten essentially require."), "jwb@csse.monash.edu.au");
diff --git a/kiten/optiondialog.cpp b/kiten/optiondialog.cpp
index 0c3b6cd5..acf85e05 100644
--- a/kiten/optiondialog.cpp
+++ b/kiten/optiondialog.cpp
@@ -42,12 +42,12 @@
 
 ConfigureDialog::ConfigureDialog(TQWidget *parent, const char *name) : TDEConfigDialog(parent, name, Config::self())
 {
-	configDic = new ConfigDictionaries(0, "dictionaries_page");
+	configDic = new ConfigDictionaries(nullptr, "dictionaries_page");
 	connect(configDic, TQ_SIGNAL(widgetChanged()), this, TQ_SLOT(updateButtons()));
 	addPage(configDic, i18n("Dictionaries"), "contents");
-	addPage(new ConfigSearching(0, "searching_page"), i18n("Searching"), "edit-find");
-	addPage(new ConfigLearn(0, "learn_page"), i18n("Learn"), "pencil");
-	ConfigFont* configFont = new ConfigFont(0, "font_page");
+	addPage(new ConfigSearching(nullptr, "searching_page"), i18n("Searching"), "edit-find");
+	addPage(new ConfigLearn(nullptr, "learn_page"), i18n("Learn"), "pencil");
+	ConfigFont* configFont = new ConfigFont(nullptr, "font_page");
 	configFont->kcfg_font->setSampleText(i18n("Result View Font")+TQString::fromUtf8(" - ã�„ã‚�ã�¯ã�«ã�»ã�¸ã�¨ æ¼¢å­—"));
 	addPage(configFont, i18n("Font"), "fonts");
 }
diff --git a/kiten/optiondialog.h b/kiten/optiondialog.h
index 514c44b3..95c7eadf 100644
--- a/kiten/optiondialog.h
+++ b/kiten/optiondialog.h
@@ -43,7 +43,7 @@ class ConfigureDialog : public TDEConfigDialog
 	TQ_OBJECT
   
 public:
-	ConfigureDialog(TQWidget *parent=0, const char *name=0);
+	ConfigureDialog(TQWidget *parent=nullptr, const char *name=nullptr);
 	~ConfigureDialog();
 signals:
 	void settingsUpdated();
diff --git a/kiten/rad.cpp b/kiten/rad.cpp
index b1dc7e11..271bca02 100644
--- a/kiten/rad.cpp
+++ b/kiten/rad.cpp
@@ -55,7 +55,7 @@ void Rad::load()
 	TQString radkfile = dirs->findResource("data", "kiten/radkfile");
 	if (radkfile.isNull())
 	{
-		KMessageBox::error(0, i18n("Kanji radical information file not installed, so radical searching cannot be used."));
+		KMessageBox::error(nullptr, i18n("Kanji radical information file not installed, so radical searching cannot be used."));
 		return;
 	}
 
@@ -63,7 +63,7 @@ void Rad::load()
 
 	if (!f.open(IO_ReadOnly))
 	{
-		KMessageBox::error(0, i18n("Kanji radical information could not be loaded, so radical searching cannot be used."));
+		KMessageBox::error(nullptr, i18n("Kanji radical information could not be loaded, so radical searching cannot be used."));
 	}
 
 	TQTextStream t(&f);
diff --git a/kiten/rad.h b/kiten/rad.h
index 1ac7a477..a539e881 100644
--- a/kiten/rad.h
+++ b/kiten/rad.h
@@ -78,7 +78,7 @@ class TDE_EXPORT RadWidget : public TQWidget
   
 
 	public:
-	RadWidget(Rad *, TQWidget *parent = 0, const char *name = 0);
+	RadWidget(Rad *, TQWidget *parent = nullptr, const char *name = nullptr);
 	~RadWidget();
 
 	signals:
diff --git a/kiten/widgets.cpp b/kiten/widgets.cpp
index e952fa63..02042851 100644
--- a/kiten/widgets.cpp
+++ b/kiten/widgets.cpp
@@ -487,7 +487,7 @@ void EditAction::unplug( TQWidget *w )
 	toolBar->removeItem( itemId( idx ) );
 
 	removeContainer( idx );
-	m_combo = 0L;
+	m_combo = nullptr;
 }
 
 void EditAction::clear()
diff --git a/kiten/widgets.h b/kiten/widgets.h
index 2319b4d0..bc944eee 100644
--- a/kiten/widgets.h
+++ b/kiten/widgets.h
@@ -40,7 +40,7 @@ class TDE_EXPORT ResultView : public KTextBrowser
   
 	
 	public:
-	ResultView(bool showLinks, TQWidget *parent = 0, const char *name = 0);
+	ResultView(bool showLinks, TQWidget *parent = nullptr, const char *name = nullptr);
 
 	void addResult(Dict::Entry result, bool common = false);
 	void addKanjiResult(Dict::Entry, bool common = false, Radical = Radical());
@@ -70,7 +70,7 @@ class TDE_EXPORT eEdit : public TDEMainWindow
   
 	
 	public:
-	eEdit(const TQString &, TQWidget *parent = 0, const char *name = 0);
+	eEdit(const TQString &, TQWidget *parent = nullptr, const char *name = nullptr);
 	~eEdit();
 
 	private slots:
diff --git a/klatin/klatin/klatin.cpp b/klatin/klatin/klatin.cpp
index 3d7f28ce..90f8ee5a 100644
--- a/klatin/klatin/klatin.cpp
+++ b/klatin/klatin/klatin.cpp
@@ -161,7 +161,7 @@ void KLatin::loadSettings()
 
 	TDEConfigDialog *dialog = new TDEConfigDialog(this, "settings", Settings::self());
 	
-	vocabPage = new VocabPage(0); 
+	vocabPage = new VocabPage(nullptr); 
 	vocabPage->kcfg_DefaultFile->setMode(KFile::File | KFile::LocalOnly);
 	vocabPage->kcfg_DefaultFile->setFilter("*.kvtml");
 	vocabPage->kcfg_DefaultFile->setCaption(i18n("Load Vocabulary File"));
diff --git a/klatin/klatin/klatin.h b/klatin/klatin/klatin.h
index 51542764..af4d42c6 100644
--- a/klatin/klatin/klatin.h
+++ b/klatin/klatin/klatin.h
@@ -38,7 +38,7 @@ class KLatin : public TDEMainWindow
 	TQ_OBJECT
   
 public:
-	KLatin(TQWidget* parent=0, const char *name=0);
+	KLatin(TQWidget* parent=nullptr, const char *name=nullptr);
 	~KLatin();
 
 	void setupActions();
diff --git a/klatin/klatin/klatingrammar.h b/klatin/klatin/klatingrammar.h
index e5ea6787..a0a78f0e 100644
--- a/klatin/klatin/klatingrammar.h
+++ b/klatin/klatin/klatingrammar.h
@@ -29,7 +29,7 @@ class KLatinGrammar : public KLatinGrammarWidget
 	TQ_OBJECT
   
 public:
-	KLatinGrammar(TQWidget* parent=0, const char *name=0);
+	KLatinGrammar(TQWidget* parent=nullptr, const char *name=nullptr);
 	~KLatinGrammar();
 
 	/// Load next question
diff --git a/klatin/klatin/klatinverbs.h b/klatin/klatin/klatinverbs.h
index 73bcd91d..82591eb5 100644
--- a/klatin/klatin/klatinverbs.h
+++ b/klatin/klatin/klatinverbs.h
@@ -43,7 +43,7 @@ class KLatinVerbs : public KLatinVerbsWidget
 	TQ_OBJECT
   
 public:
-	KLatinVerbs(TQWidget* parent=0, const char *name=0);
+	KLatinVerbs(TQWidget* parent=nullptr, const char *name=nullptr);
 	~KLatinVerbs();
 
 	/// Load next question
diff --git a/klatin/klatin/klatinvocab.cpp b/klatin/klatin/klatinvocab.cpp
index c71e3651..90711ec8 100644
--- a/klatin/klatin/klatinvocab.cpp
+++ b/klatin/klatin/klatinvocab.cpp
@@ -348,14 +348,14 @@ void KLatinVocab::resultsDialog()
 {
 	// Show the results dialog
 
-	results = new KLatinResultsDialog(this, 0, true);
+	results = new KLatinResultsDialog(this, nullptr, true);
 	results->CloseButton->setGuiItem(KStdGuiItem::close());
 
 	int temp = Score2Label->text().toInt();
 
 	// Set the lists
 	for (int i = 0 ; i < temp; i++) {
-		if (m_previousAnswer[i] != 0)
+		if (m_previousAnswer[i] != nullptr)
 			new TQListViewItem(results->ResultsView, m_previousQuestion[i], m_previousAnswer[i], m_correctAnswer[i]);
 	}
 
@@ -388,7 +388,7 @@ void KLatinVocab::changeVocab(const TQString &filename)
 	// Reset score labels
 	Score1Label->setNum(m_totalCorrect);
 	Score2Label->setNum(m_total);
-	PercentageLabel->setText(0);
+	PercentageLabel->setText(nullptr);
 
 	// Load the vocabulary file again (and thus create a new random sequence)
 	parseVocab(filename);
diff --git a/klatin/klatin/klatinvocab.h b/klatin/klatin/klatinvocab.h
index 1eabeed6..475c1330 100644
--- a/klatin/klatin/klatinvocab.h
+++ b/klatin/klatin/klatinvocab.h
@@ -33,7 +33,7 @@ class KLatinVocab : public KLatinVocabWidget
     TQ_OBJECT
   
 public:
-	KLatinVocab(TQWidget* parent=0, const char *name=0);
+	KLatinVocab(TQWidget* parent=nullptr, const char *name=nullptr);
 	~KLatinVocab();
 
 	/// Load vocabulary from file @p customFile
diff --git a/klatin/klatin/main.cpp b/klatin/klatin/main.cpp
index bd90a349..6da928bb 100644
--- a/klatin/klatin/main.cpp
+++ b/klatin/klatin/main.cpp
@@ -34,7 +34,7 @@ int main(int argc, char *argv[])
 
 	TDEAboutData aboutData( "klatin", I18N_NOOP("KLatin"),
 	"0.9", description, TDEAboutData::License_GPL,
-	"(C) 2001-2004, George Wright", 0, "http://edu.kde.org/klatin", "submit@bugs.trinitydesktop.org");
+	"(C) 2001-2004, George Wright", nullptr, "http://edu.kde.org/klatin", "submit@bugs.trinitydesktop.org");
 
 	aboutData.addAuthor("George Wright",I18N_NOOP("Author and Maintainer"), "gwright@kde.org");
 	aboutData.addCredit("Anne-Marie Mahfouf",I18N_NOOP("Bug fixes, documentation"), "annma@kde.org");
diff --git a/klettres/klettres/klettres.cpp b/klettres/klettres/klettres.cpp
index af757870..4d398cb3 100644
--- a/klettres/klettres/klettres.cpp
+++ b/klettres/klettres/klettres.cpp
@@ -54,9 +54,9 @@ const int ID_GROWNB    = 101;
 const int ID_MENUBARB  = 102;
 
 KLettres::KLettres()
-        : TDEMainWindow( 0, "KLettres" )
+        : TDEMainWindow( nullptr, "KLettres" )
 {
-    mNewStuff = 0;
+    mNewStuff = nullptr;
     m_view = new KLettresView(this);
     // tell the TDEMainWindow that this is indeed the main widget
     setCentralWidget(m_view);
@@ -268,7 +268,7 @@ void KLettres::optionsPreferences()
         return;
 
     TDEConfigDialog *dialog = new TDEConfigDialog(this, "settings", Prefs::self());
-    dialog->addPage(new fontsdlg(0, "mFont"), i18n("Font Settings"), "fonts");
+    dialog->addPage(new fontsdlg(nullptr, "mFont"), i18n("Font Settings"), "fonts");
     //fontsdlg is the page name, mFont is the widget name, Font Settings is the page display string
     //fonts is the icon
     Timer *m_timer = new Timer();
diff --git a/klettres/klettres/main.cpp b/klettres/klettres/main.cpp
index 39945918..50c19fde 100644
--- a/klettres/klettres/main.cpp
+++ b/klettres/klettres/main.cpp
@@ -46,8 +46,8 @@ static TDECmdLineOptions options[] =
 int main(int argc, char **argv)
 {
     TDEAboutData about("klettres", I18N_NOOP("KLettres"), KLETTRES_VERSION, description,
-                     TDEAboutData::License_GPL, "(C) 2001-2006 Anne-Marie Mahfouf",0, "http://edu.kde.org/klettres", "submit@bugs.trinitydesktop.org");
-    about.addAuthor( "Anne-Marie Mahfouf", 0, "annma AT kde.org");
+                     TDEAboutData::License_GPL, "(C) 2001-2006 Anne-Marie Mahfouf",nullptr, "http://edu.kde.org/klettres", "submit@bugs.trinitydesktop.org");
+    about.addAuthor( "Anne-Marie Mahfouf", nullptr, "annma AT kde.org");
     about.addCredit("Ludovic Grossard",
                     I18N_NOOP("French sounds"), "grossard AT kde.org");
     about.addCredit("Geert Stams",
diff --git a/klettres/klettres/soundfactory.cpp b/klettres/klettres/soundfactory.cpp
index 3cc70452..e2e3eacc 100644
--- a/klettres/klettres/soundfactory.cpp
+++ b/klettres/klettres/soundfactory.cpp
@@ -38,7 +38,7 @@ SoundFactory::SoundFactory(KLettres *parent, const char *name)
 {
     klettres = parent;
 
-    namesList = filesList = 0;
+    namesList = filesList = nullptr;
     sounds = 0;
 
     bool ok = klettres->loadLayout(m_layoutsDocument);
@@ -68,7 +68,7 @@ void SoundFactory::playSound(int mySound)
     soundFile = locate("data", "klettres/" + filesList[mySound]);
     kdDebug() << "soundFile " << soundFile << endl;
     
-    if (soundFile == 0) return;
+    if (!soundFile) return;
     
     KAudioPlayer::play(soundFile);
 }
diff --git a/kmplot/kmplot/FktDlg.cpp b/kmplot/kmplot/FktDlg.cpp
index e4df4f6d..a7705389 100644
--- a/kmplot/kmplot/FktDlg.cpp
+++ b/kmplot/kmplot/FktDlg.cpp
@@ -68,7 +68,7 @@ FktDlg::~FktDlg()
 
 void FktDlg::slotDelete()
 {
-	if ( lb_fktliste->currentItem() == 0)
+	if (!lb_fktliste->currentItem())
 		return;
 	TQCheckListItem *currentItem = dynamic_cast<TQCheckListItem *>(lb_fktliste->currentItem());
 	if( currentItem->text()[0] == 'x' )
@@ -129,7 +129,7 @@ void FktDlg::lb_fktliste_clicked( TQListViewItem * item )
 void FktDlg::slotEdit()
 {
 	TQCheckListItem *currentItem = dynamic_cast<TQCheckListItem *>(lb_fktliste->currentItem());
-	if ( currentItem == 0 )
+	if ( !currentItem )
 	{
 		PushButtonEdit->setEnabled(false);
 		return;
@@ -175,7 +175,7 @@ void FktDlg::updateView()
 
 void FktDlg::slotHasSelection()
 {
-	bool const has_selection = !( lb_fktliste->currentItem() == 0 );
+	bool const has_selection = !( lb_fktliste->currentItem() == nullptr );
 	PushButtonEdit->setEnabled( has_selection );
 	PushButtonDel->setEnabled( has_selection );
 	cmdCopyFunction->setEnabled( has_selection );
@@ -312,7 +312,7 @@ void FktDlg::showEvent ( TQShowEvent * )
 
 void FktDlg::slotCopyFunction()
 {
-	if ( lb_fktliste->currentItem() == 0)
+	if (!lb_fktliste->currentItem())
 	{
 		cmdCopyFunction->setEnabled(false);
 		return;
@@ -324,7 +324,7 @@ void FktDlg::slotCopyFunction()
 
 void FktDlg::slotMoveFunction()
 {
-	if ( lb_fktliste->currentItem() == 0)
+	if (!lb_fktliste->currentItem())
 	{
 		cmdCopyFunction->setEnabled(false);
 		return;
diff --git a/kmplot/kmplot/MainDlg.cpp b/kmplot/kmplot/MainDlg.cpp
index 4b514926..5a65ae6a 100644
--- a/kmplot/kmplot/MainDlg.cpp
+++ b/kmplot/kmplot/MainDlg.cpp
@@ -63,7 +63,7 @@ class KmPlotIO;
 
 bool MainDlg::oldfileversion;
 
-MainDlg::MainDlg(TQWidget *parentWidget, const char *, TQObject *parent, const char *name) :  DCOPObject( "MainDlg" ), KParts::ReadOnlyPart( parent, name ), m_recentFiles( 0 ), m_modified(false), m_parent(parentWidget)
+MainDlg::MainDlg(TQWidget *parentWidget, const char *, TQObject *parent, const char *name) :  DCOPObject( "MainDlg" ), KParts::ReadOnlyPart( parent, name ), m_recentFiles( nullptr ), m_modified(false), m_parent(parentWidget)
 {
 	// we need an instance
 	setInstance( KmPlotPartFactory::instance() );
@@ -80,8 +80,8 @@ MainDlg::MainDlg(TQWidget *parentWidget, const char *, TQObject *parent, const c
 		m_readonly = true;
 		new BrowserExtension(this); // better integration with Konqueror
 	}
-	fdlg = 0;
-	coordsDialog = 0;
+	fdlg = nullptr;
+	coordsDialog = nullptr;
 	m_popupmenu = new TDEPopupMenu(parentWidget);
 	view = new View( m_readonly, m_modified, m_popupmenu, parentWidget );
 	connect( view, TQ_SIGNAL( setStatusBarText(const TQString &)), this, TQ_SLOT( setReadOnlyStatusBarText(const TQString &) ) );
@@ -103,8 +103,8 @@ MainDlg::MainDlg(TQWidget *parentWidget, const char *, TQObject *parent, const c
 	m_settingsDialog->setHelp("general-config");
 
 	// create and add the page(s)
-	m_generalSettings = new SettingsPagePrecision( 0, "precisionSettings", "precision" );
-	m_constantsSettings = new KConstantEditor( view, 0, "constantsSettings" );
+	m_generalSettings = new SettingsPagePrecision( nullptr, "precisionSettings", "precision" );
+	m_constantsSettings = new KConstantEditor( view, nullptr, "constantsSettings" );
 	m_settingsDialog->addPage( m_generalSettings, i18n("General"), "package_settings", i18n("General Settings") );
 	m_settingsDialog->addPage( m_constantsSettings, i18n("Constants"), "editconstants", i18n("Constants") );
 	// User edited the configuration - update your local copies of the
@@ -180,7 +180,7 @@ void MainDlg::setupActions()
 	TDEAction *mnuArea = new TDEAction( i18n( "&Calculate Integral" ), 0, this, TQ_SLOT( graphArea() ), actionCollection(), "grapharea" );
 
 	connect( m_quickEdit, TQ_SIGNAL( returnPressed( const TQString& ) ), this, TQ_SLOT( slotQuickEdit( const TQString& ) ) );
-	KWidgetAction* quickEditAction =  new KWidgetAction( m_quickEdit, i18n( "Quick Edit" ), 0, this, 0, actionCollection(), "quickedit" );
+	KWidgetAction* quickEditAction =  new KWidgetAction( m_quickEdit, i18n( "Quick Edit" ), 0, this, nullptr, actionCollection(), "quickedit" );
 	quickEditAction->setWhatsThis( i18n( "Enter a simple function equation here.\n"
 	                                     "For instance: f(x)=x^2\nFor more options use Functions->Edit Plots... menu." ) );
 
@@ -305,7 +305,7 @@ void MainDlg::slotExport()
 			{
 				KTempFile tmp;
 				pic.save( tmp.name(), "SVG");
-				if ( !TDEIO::NetAccess::upload(tmp.name(), url, 0) )
+				if ( !TDEIO::NetAccess::upload(tmp.name(), url, nullptr) )
 					KMessageBox::error(m_parent, i18n("The URL could not be saved.") );
 				tmp.unlink();
 			}
@@ -321,7 +321,7 @@ void MainDlg::slotExport()
 			{
 				KTempFile tmp;
 				pic.save( tmp.name(), "BMP");
-				if ( !TDEIO::NetAccess::upload(tmp.name(), url, 0) )
+				if ( !TDEIO::NetAccess::upload(tmp.name(), url, nullptr) )
 					KMessageBox::error(m_parent, i18n("The URL could not be saved.") );
 				tmp.unlink();
 			}
@@ -337,7 +337,7 @@ void MainDlg::slotExport()
 			{
 				KTempFile tmp;
 				pic.save( tmp.name(), "PNG");
-				if ( !TDEIO::NetAccess::upload(tmp.name(), url, 0) )
+				if ( !TDEIO::NetAccess::upload(tmp.name(), url, nullptr) )
 					KMessageBox::error(m_parent, i18n("The URL could not be saved.") );
 				tmp.unlink();
 			}
@@ -404,7 +404,7 @@ void MainDlg::editColors()
 	// create a config dialog and add a colors page
 	TDEConfigDialog* colorsDialog = new TDEConfigDialog( m_parent, "colors", Settings::self() );
 	colorsDialog->setHelp("color-config");
-	colorsDialog->addPage( new SettingsPageColor( 0, "colorSettings" ), i18n( "Colors" ), "colorize", i18n( "Edit Colors" ) );
+	colorsDialog->addPage( new SettingsPageColor( nullptr, "colorSettings" ), i18n( "Colors" ), "colorize", i18n( "Edit Colors" ) );
 
 	// User edited the configuration - update your local copies of the
 	// configuration data
@@ -430,7 +430,7 @@ void MainDlg::editScaling()
 	// create a config dialog and add a scaling page
 	TDEConfigDialog *scalingDialog = new TDEConfigDialog( m_parent, "scaling", Settings::self() );
 	scalingDialog->setHelp("scaling-config");
-	scalingDialog->addPage( new SettingsPageScaling( 0, "scalingSettings" ), i18n( "Scale" ), "scaling", i18n( "Edit Scaling" ) );
+	scalingDialog->addPage( new SettingsPageScaling( nullptr, "scalingSettings" ), i18n( "Scale" ), "scaling", i18n( "Edit Scaling" ) );
 	// User edited the configuration - update your local copies of the
 	// configuration data
 	connect( scalingDialog, TQ_SIGNAL( settingsChanged() ), this, TQ_SLOT(updateSettings() ) );
@@ -442,7 +442,7 @@ void MainDlg::editFonts()
 	// create a config dialog and add a font page
 	TDEConfigDialog* fontsDialog = new TDEConfigDialog( m_parent, "fonts", Settings::self() );
 	fontsDialog->setHelp("font-config");
-	fontsDialog->addPage( new SettingsPageFonts( 0, "fontsSettings" ), i18n( "Fonts" ), "fonts", i18n( "Edit Fonts" ) );
+	fontsDialog->addPage( new SettingsPageFonts( nullptr, "fontsSettings" ), i18n( "Fonts" ), "fonts", i18n( "Edit Fonts" ) );
 	// User edited the configuration - update your local copies of the
 	// configuration data
 	connect( fontsDialog, TQ_SIGNAL( settingsChanged() ), this, TQ_SLOT(updateSettings() ) );
@@ -733,7 +733,7 @@ void MainDlg::toggleShowSlider3()
 void MainDlg::toggleShowSlider(int const num)
 {
 	// create the slider if it not exists already
-	if ( view->sliders[ num ] == 0 )
+	if (!view->sliders[ num ])
 	{
 		view->sliders[ num ] = new KSliderWindow( view, num);
 		connect( view->sliders[num]->slider, TQ_SIGNAL( valueChanged( int ) ), view, TQ_SLOT( drawPlot() ) );
@@ -770,8 +770,8 @@ void MainDlg::resetZoom()
 #include <tdeaboutdata.h>
 #include <tdelocale.h>
 
-TDEInstance*  KmPlotPartFactory::s_instance = 0L;
-TDEAboutData* KmPlotPartFactory::s_about = 0L;
+TDEInstance*  KmPlotPartFactory::s_instance = nullptr;
+TDEAboutData* KmPlotPartFactory::s_about = nullptr;
 
 KmPlotPartFactory::KmPlotPartFactory()
 		: KParts::Factory()
@@ -782,7 +782,7 @@ KmPlotPartFactory::~KmPlotPartFactory()
 	delete s_instance;
 	delete s_about;
 
-	s_instance = 0L;
+	s_instance = nullptr;
 }
 
 KParts::Part* KmPlotPartFactory::createPartObject( TQWidget *parentWidget, const char *widgetName,
diff --git a/kmplot/kmplot/View.cpp b/kmplot/kmplot/View.cpp
index db089543..95d1f9e6 100644
--- a/kmplot/kmplot/View.cpp
+++ b/kmplot/kmplot/View.cpp
@@ -61,7 +61,7 @@ View::View(bool const r, bool &mo, TDEPopupMenu *p, TQWidget* parent, const char
 	csmode = csparam = -1;
 	cstype = 0;
 	areaDraw = false;
-	areaUfkt = 0;
+	areaUfkt = nullptr;
 	areaPMode = 0;
 	areaMin = areaMax = 0.0;
 	w = h = 0;
@@ -77,7 +77,7 @@ View::View(bool const r, bool &mo, TDEPopupMenu *p, TQWidget* parent, const char
 	ymax = 0.0;;
 	m_printHeaderTable = false;
 	stop_calculating = false;
-	m_minmax = 0;
+	m_minmax = nullptr;
 	isDrawing = false;
 	m_popupmenushown = 0;
 	
@@ -91,7 +91,7 @@ View::View(bool const r, bool &mo, TDEPopupMenu *p, TQWidget* parent, const char
 	setMouseTracking(true);
 	rootflg = false;
 	for( int number = 0; number < SLIDER_COUNT; number++ )
-		sliders[ number ] = 0;
+		sliders[ number ] = nullptr;
 	updateSliders();
 	m_popupmenushown = 0;
 	m_popupmenu->insertTitle( "",10);
@@ -310,7 +310,7 @@ void View::plotfkt(Ufkt *ufkt, TQPainter *pDC)
 				x = ufkt->oldx = ufkt->startx; //the initial x-point
 				ufkt->oldy = ufkt->starty;
 				ufkt->oldyprim = ufkt->integral_precision;
-				paintEvent(0);
+				paintEvent(nullptr);
 			}
 			else
 				x=dmin;
@@ -399,7 +399,7 @@ void View::plotfkt(Ufkt *ufkt, TQPainter *pDC)
 								x = ufkt->oldx = ufkt->startx;
 								ufkt->oldy = ufkt->starty;
 								ufkt->oldyprim = ufkt->integral_precision;
-								paintEvent(0);
+								paintEvent(nullptr);
 								mflg=2;
 							}
 						}
@@ -649,7 +649,7 @@ void View::mouseMoveEvent(TQMouseEvent *e)
 		DC.setWindow(0, 0, w, h);
 		DC.setWorldMatrix(wm);
 		ptl=DC.xFormDev(e->pos());
-		Ufkt *it = 0;
+		Ufkt *it = nullptr;
 		if( csmode >= 0 && csmode <= (int)m_parser->countFunctions() )
 		{
 			int const ix = m_parser->ixValue(csmode);
@@ -1241,7 +1241,7 @@ void View::findMinMaxValue(Ufkt *ufkt, char p_mode, bool minimum, double &dmin,
 		x = ufkt->oldx = ufkt->startx; //the initial x-point
 		ufkt->oldy = ufkt->starty;
 		ufkt->oldyprim = ufkt->integral_precision;
-		paintEvent(0);
+		paintEvent(nullptr);
 	}
 	else
 	{
@@ -1324,7 +1324,7 @@ void View::findMinMaxValue(Ufkt *ufkt, char p_mode, bool minimum, double &dmin,
 					x = ufkt->oldx = ufkt->startx;
 					ufkt->oldy = ufkt->starty;
 					ufkt->oldyprim = ufkt->integral_precision;
-					paintEvent(0);
+					paintEvent(nullptr);
 				}
 			}
 			else
@@ -1410,7 +1410,7 @@ void View::getYValue(Ufkt *ufkt, char p_mode,  double x, double &y, const TQStri
 		x = ufkt->oldx = ufkt->startx; //the initial x-point
 		ufkt->oldy = ufkt->starty;
 		ufkt->oldyprim = ufkt->integral_precision;
-		paintEvent(0);
+		paintEvent(nullptr);
 		while (x>=dmin && !stop_calculating && !target_found)
 		{
 			y = m_parser->euler_method( x, ufkt );
@@ -1434,7 +1434,7 @@ void View::getYValue(Ufkt *ufkt, char p_mode,  double x, double &y, const TQStri
 					x = ufkt->oldx = ufkt->startx;
 					ufkt->oldy = ufkt->starty;
 					ufkt->oldyprim = ufkt->integral_precision;
-					paintEvent(0);
+					paintEvent(nullptr);
 				}
 			}
 			else
@@ -1616,7 +1616,7 @@ void View::areaUnderGraph( Ufkt *ufkt, char const p_mode,  double &dmin, double
 		color = ufkt->integral_color;
 		break;
 	}
-	if ( DC == 0) //screen
+	if ( !DC) //screen
 	{
 		int ly;
 		buffer.fill(backgroundcolor);
@@ -1767,7 +1767,7 @@ void View::areaUnderGraph( Ufkt *ufkt, char const p_mode,  double &dmin, double
 					x = ufkt->oldx = ufkt->startx;
 					ufkt->oldy = ufkt->starty;
 					ufkt->oldyprim = ufkt->integral_precision;
-					paintEvent(0);
+					paintEvent(nullptr);
 				}
 			}
 			else
@@ -1838,7 +1838,7 @@ void View::updateSliders()
 		if( it->use_slider > -1  &&  (it->f_mode || it->f1_mode || it->f2_mode || it->integral_mode))
 		{
 			// create the slider if it not exists already
-			if ( sliders[ it->use_slider ] == 0 )
+			if (!sliders[ it->use_slider ])
 			{
 				sliders[ it->use_slider ] = new KSliderWindow( this, it->use_slider);
 				connect( sliders[ it->use_slider ]->slider, TQ_SIGNAL( valueChanged( int ) ), this, TQ_SLOT( drawPlot() ) );
diff --git a/kmplot/kmplot/coordsconfigdialog.cpp b/kmplot/kmplot/coordsconfigdialog.cpp
index 94dfe465..1242e1e6 100644
--- a/kmplot/kmplot/coordsconfigdialog.cpp
+++ b/kmplot/kmplot/coordsconfigdialog.cpp
@@ -35,7 +35,7 @@
 CoordsConfigDialog::CoordsConfigDialog(XParser *p, TQWidget *parent)
 	: TDEConfigDialog(parent, "coords", Settings::self()), m_parser(p)
 {
-	configAxesDialog = new SettingsPageCoords( 0, "coordsSettings" );
+	configAxesDialog = new SettingsPageCoords( nullptr, "coordsSettings" );
 	addPage(configAxesDialog , i18n( "Coords" ), "coords", i18n( "Edit Coordinate System" ) );
 	setHelp("axes-config");
 }
diff --git a/kmplot/kmplot/coordsconfigdialog.h b/kmplot/kmplot/coordsconfigdialog.h
index 02ecfc9f..e56c7205 100644
--- a/kmplot/kmplot/coordsconfigdialog.h
+++ b/kmplot/kmplot/coordsconfigdialog.h
@@ -41,7 +41,7 @@ class CoordsConfigDialog : public TDEConfigDialog
 	TQ_OBJECT
   
 	public:
-		CoordsConfigDialog(XParser *p, TQWidget *parent = 0);
+		CoordsConfigDialog(XParser *p, TQWidget *parent = nullptr);
 		~CoordsConfigDialog();
 	protected slots:
 		virtual void slotOk();
diff --git a/kmplot/kmplot/editfunction.cpp b/kmplot/kmplot/editfunction.cpp
index 0e9e7a09..1737a86c 100644
--- a/kmplot/kmplot/editfunction.cpp
+++ b/kmplot/kmplot/editfunction.cpp
@@ -73,7 +73,7 @@ EditFunction::EditFunction( XParser* parser, TQWidget* parent, const char* name
 	connect( editfunctionpage->useNoParameter, TQ_SIGNAL ( toggled(bool) ), this, TQ_SLOT( noParameter_toggled(bool) ) );
 	connect( editfunctionpage->customMinRange, TQ_SIGNAL ( toggled(bool) ), this, TQ_SLOT( customMinRange_toggled(bool) ) );
 	connect( editfunctionpage->customMaxRange, TQ_SIGNAL ( toggled(bool) ), this, TQ_SLOT( customMaxRange_toggled(bool) ) );
-    m_updatedfunction = 0;
+    m_updatedfunction = nullptr;
 }
 
 void EditFunction::initDialog( int id )
diff --git a/kmplot/kmplot/kconstanteditor.cpp b/kmplot/kmplot/kconstanteditor.cpp
index c11f2d62..d1388566 100644
--- a/kmplot/kmplot/kconstanteditor.cpp
+++ b/kmplot/kmplot/kconstanteditor.cpp
@@ -192,7 +192,7 @@ void KConstantEditor::editConstantSlot()
 	}
 
 	TQListViewItem *item = varlist->findItem(TQChar(constant), 0);
-	if (item!=0)
+	if (item)
 		item->setText(1,value);
 	
 
diff --git a/kmplot/kmplot/kconstanteditor.h b/kmplot/kmplot/kconstanteditor.h
index 6357c700..82cce78c 100644
--- a/kmplot/kmplot/kconstanteditor.h
+++ b/kmplot/kmplot/kconstanteditor.h
@@ -39,7 +39,7 @@ class KConstantEditor : public QConstantEditor
 TQ_OBJECT
   
 public:
-    KConstantEditor(View *, TQWidget *parent = 0, const char *name = 0);
+    KConstantEditor(View *, TQWidget *parent = nullptr, const char *name = nullptr);
     ~KConstantEditor();
     
 public slots:
diff --git a/kmplot/kmplot/keditconstant.h b/kmplot/kmplot/keditconstant.h
index cd742f6c..7c0cf869 100644
--- a/kmplot/kmplot/keditconstant.h
+++ b/kmplot/kmplot/keditconstant.h
@@ -38,7 +38,7 @@ class KEditConstant : public QEditConstant
   TQ_OBJECT
   
 public:
-    KEditConstant(XParser *p, char &, TQString &,TQWidget *parent = 0, const char *name = 0);
+    KEditConstant(XParser *p, char &, TQString &,TQWidget *parent = nullptr, const char *name = nullptr);
     ~KEditConstant();
    
 public slots:
diff --git a/kmplot/kmplot/keditparametric.cpp b/kmplot/kmplot/keditparametric.cpp
index ce0f2f74..6a737db8 100644
--- a/kmplot/kmplot/keditparametric.cpp
+++ b/kmplot/kmplot/keditparametric.cpp
@@ -46,7 +46,7 @@ KEditParametric::KEditParametric( XParser* parser, TQWidget* parent, const char*
 {
 	connect( customMinRange, TQ_SIGNAL ( toggled(bool) ), this, TQ_SLOT( customMinRange_toggled(bool) ) );
 	connect( customMaxRange, TQ_SIGNAL ( toggled(bool) ), this, TQ_SLOT( customMaxRange_toggled(bool) ) );
-	m_updatedfunction = 0;
+	m_updatedfunction = nullptr;
 }
 
 void KEditParametric::initDialog( int x_id, int y_id)
@@ -233,7 +233,7 @@ void KEditParametric::accept()
         added_ufkt->usecustomxmin = tmp_ufkt.usecustomxmin;
         added_ufkt->usecustomxmax = tmp_ufkt.usecustomxmax;
 
-        added_ufkt = 0;
+        added_ufkt = nullptr;
         if( m_y_id != -1 )  //when editing a function:
         {
                 added_ufkt = &m_parser->ufkt[m_parser->ixValue(m_y_id)];
diff --git a/kmplot/kmplot/keditpolar.cpp b/kmplot/kmplot/keditpolar.cpp
index b1d4815e..af7e6876 100644
--- a/kmplot/kmplot/keditpolar.cpp
+++ b/kmplot/kmplot/keditpolar.cpp
@@ -47,7 +47,7 @@ KEditPolar::KEditPolar( XParser* parser, TQWidget* parent, const char* name ) :
 {
 	connect( customMinRange, TQ_SIGNAL ( toggled(bool) ), this, TQ_SLOT( customMinRange_toggled(bool) ) );
 	connect( customMaxRange, TQ_SIGNAL ( toggled(bool) ), this, TQ_SLOT( customMaxRange_toggled(bool) ) );
-	m_updatedfunction = 0;
+	m_updatedfunction = nullptr;
 }
 
 void KEditPolar::initDialog( int id )
diff --git a/kmplot/kmplot/kminmax.cpp b/kmplot/kmplot/kminmax.cpp
index 1a6dffac..d2fdc023 100644
--- a/kmplot/kmplot/kminmax.cpp
+++ b/kmplot/kmplot/kminmax.cpp
@@ -277,7 +277,7 @@ void KMinMax::cmdFind_clicked()
 	}
 
 	TQString fname, fstr;
-	Ufkt *ufkt = 0;
+	Ufkt *ufkt = nullptr;
 	TQString sec_function = function.section('(',0,0);
 
         for( TQValueVector<Ufkt>::iterator it =  m_view->parser()->ufkt.begin(); it !=  m_view->parser()->ufkt.end(); ++it)
@@ -331,7 +331,7 @@ void KMinMax::cmdFind_clicked()
 	else if ( m_mode == 3)
 	{
 		double dmin_tmp = dmin;
-		m_view->areaUnderGraph(ufkt,p_mode,dmin,dmax,parameter, 0);
+		m_view->areaUnderGraph(ufkt,p_mode,dmin,dmax,parameter, nullptr);
 		if ( !m_view->isCalculationStopped() )
 		{
 			m_view->setFocus();
diff --git a/kmplot/kmplot/kminmax.h b/kmplot/kmplot/kminmax.h
index 78c92739..50337813 100644
--- a/kmplot/kmplot/kminmax.h
+++ b/kmplot/kmplot/kminmax.h
@@ -38,7 +38,7 @@ class KMinMax : public QMinMax
 TQ_OBJECT
   
 public:
-    KMinMax(View *, TQWidget *parent = 0, const char *name = 0);
+    KMinMax(View *, TQWidget *parent = nullptr, const char *name = nullptr);
     /// called every time the dialog is opened
     void init(char);
     /// update the list with functions
diff --git a/kmplot/kmplot/kmplot.cpp b/kmplot/kmplot/kmplot.cpp
index c85c944e..ad5ae48d 100644
--- a/kmplot/kmplot/kmplot.cpp
+++ b/kmplot/kmplot/kmplot.cpp
@@ -41,7 +41,7 @@
 #include "kmplotprogress.h"
 
 KmPlot::KmPlot( TDECmdLineArgs* args)
-		: DCOPObject( "KmPlotShell" ), KParts::MainWindow( 0L, "KmPlot" )
+		: DCOPObject( "KmPlotShell" ), KParts::MainWindow( nullptr, "KmPlot" )
 {
 	// set the shell's ui resource file
 	setXMLFile("kmplot_shell.rc");
diff --git a/kmplot/kmplot/kmplotio.cpp b/kmplot/kmplot/kmplotio.cpp
index d7812870..3efe67fc 100644
--- a/kmplot/kmplot/kmplotio.cpp
+++ b/kmplot/kmplot/kmplotio.cpp
@@ -189,7 +189,7 @@ bool KmPlotIO::save( const KURL &url )
 		doc.save( ts, 4 );
 		xmlfile.close();
 
-		if ( !TDEIO::NetAccess::upload(tmpfile.name(), url,0))
+		if ( !TDEIO::NetAccess::upload(tmpfile.name(), url,nullptr))
 		{
 			tmpfile.unlink();
 			return false;
@@ -224,15 +224,15 @@ bool KmPlotIO::load( const KURL &url )
 	TQFile f;
 	if ( !url.isLocalFile() )
 	{
-		if( !TDEIO::NetAccess::exists( url, true, 0 ) )
+		if( !TDEIO::NetAccess::exists( url, true, nullptr ) )
 		{
-			KMessageBox::error(0,i18n("The file does not exist."));
+			KMessageBox::error(nullptr,i18n("The file does not exist."));
 			return false;
 		}
 		TQString tmpfile;
-		if( !TDEIO::NetAccess::download( url, tmpfile, 0 ) )
+		if( !TDEIO::NetAccess::download( url, tmpfile, nullptr ) )
 		{
-			KMessageBox::error(0,i18n("An error appeared when opening this file"));
+			KMessageBox::error(nullptr,i18n("An error appeared when opening this file"));
 			return false;
 		}
 		f.setName(tmpfile);
@@ -242,12 +242,12 @@ bool KmPlotIO::load( const KURL &url )
 
 	if ( !f.open( IO_ReadOnly ) )
 	{
-		KMessageBox::error(0,i18n("An error appeared when opening this file"));
+		KMessageBox::error(nullptr,i18n("An error appeared when opening this file"));
 		return false;
 	}
 	if ( !doc.setContent( &f ) )
 	{
-		KMessageBox::error(0,i18n("The file could not be loaded"));
+		KMessageBox::error(nullptr,i18n("The file could not be loaded"));
 		f.close();
 		return false;
 	}
@@ -286,7 +286,7 @@ bool KmPlotIO::load( const KURL &url )
 		}
 	}
 	else
-		KMessageBox::error(0,i18n("The file had an unknown version number"));
+		KMessageBox::error(nullptr,i18n("The file had an unknown version number"));
 
 	if ( !url.isLocalFile() )
 		TDEIO::NetAccess::removeTempFile( f.name() );
@@ -538,7 +538,7 @@ void KmPlotIO::oldParseFunction(  XParser *m_parser, const TQDomElement & n )
 	  ufkt.fstr = tmp_fstr.left(pos);
 	  if ( !m_parser->getext( &ufkt, tmp_fstr) )
 	  {
-	    KMessageBox::error(0,i18n("The function %1 could not be loaded").arg(ufkt.fstr));
+	    KMessageBox::error(nullptr,i18n("The function %1 could not be loaded").arg(ufkt.fstr));
 	    return;
 	  }
 	}
diff --git a/kmplot/kmplot/kmplotprogress.h b/kmplot/kmplot/kmplotprogress.h
index 329bd8b8..90749891 100644
--- a/kmplot/kmplot/kmplotprogress.h
+++ b/kmplot/kmplot/kmplotprogress.h
@@ -35,7 +35,7 @@ class KmPlotProgress: public TQWidget
 	TQ_OBJECT
   
 public:
-	KmPlotProgress( TQWidget* parent = 0, const char* name = 0 );
+	KmPlotProgress( TQWidget* parent = nullptr, const char* name = nullptr );
 	~KmPlotProgress();
 	void increase();
 
diff --git a/kmplot/kmplot/kparametereditor.cpp b/kmplot/kmplot/kparametereditor.cpp
index 5aa0f810..fc6dfb53 100644
--- a/kmplot/kmplot/kparametereditor.cpp
+++ b/kmplot/kmplot/kparametereditor.cpp
@@ -89,7 +89,7 @@ void KParameterEditor::cmdNew_clicked()
 		}
 		if ( checkTwoOfIt(result) )
 		{
-			KMessageBox::error(0,i18n("The value %1 already exists and will therefore not be added.").arg(result));
+			KMessageBox::error(nullptr,i18n("The value %1 already exists and will therefore not be added.").arg(result));
 			continue;
 		}
 		list->insertItem(result);
@@ -116,7 +116,7 @@ void KParameterEditor::cmdEdit_clicked()
 		if ( checkTwoOfIt(result) )
 		{
 			if( result != list->currentText() )
-				KMessageBox::error(0,i18n("The value %1 already exists.").arg(result));
+				KMessageBox::error(nullptr,i18n("The value %1 already exists.").arg(result));
 			continue;
 		}
 		list->removeItem( list->currentItem());
@@ -140,7 +140,7 @@ void KParameterEditor::cmdImport_clicked()
         
         if (!TDEIO::NetAccess::exists(url,true,this) )
         {
-                KMessageBox::error(0,i18n("The file does not exist."));
+                KMessageBox::error(nullptr,i18n("The file does not exist."));
                 return;
         }
         
@@ -151,7 +151,7 @@ void KParameterEditor::cmdImport_clicked()
         {
                 if ( !TDEIO::NetAccess::download(url, tmpfile, this) )
                 {
-                        KMessageBox::error(0,i18n("An error appeared when opening this file"));
+                        KMessageBox::error(nullptr,i18n("An error appeared when opening this file"));
                         return;
                 }
                 file.setName(tmpfile);
@@ -192,7 +192,7 @@ void KParameterEditor::cmdImport_clicked()
 		file.close();
 	}
 	else
-		KMessageBox::error(0,i18n("An error appeared when opening this file"));
+		KMessageBox::error(nullptr,i18n("An error appeared when opening this file"));
         
         if ( !url.isLocalFile() )
                 TDEIO::NetAccess::removeTempFile( tmpfile );
@@ -231,11 +231,11 @@ void KParameterEditor::cmdExport_clicked()
                                 file.close();
                         }
                         else
-                                KMessageBox::error(0,i18n("An error appeared when saving this file"));
+                                KMessageBox::error(nullptr,i18n("An error appeared when saving this file"));
                         
                         if ( !TDEIO::NetAccess::upload(tmpfile.name(),url, this) )
                         {
-                                KMessageBox::error(0,i18n("An error appeared when saving this file"));
+                                KMessageBox::error(nullptr,i18n("An error appeared when saving this file"));
                                 tmpfile.unlink();
                                 return;
                         }
@@ -260,7 +260,7 @@ void KParameterEditor::cmdExport_clicked()
                                 file.close();
                         }
                         else
-                                KMessageBox::error(0,i18n("An error appeared when saving this file"));
+                                KMessageBox::error(nullptr,i18n("An error appeared when saving this file"));
                 }
         }
 
@@ -289,7 +289,7 @@ void KParameterEditor::varlist_doubleClicked( TQListBoxItem * )
 
 bool KParameterEditor::checkTwoOfIt(const TQString & text)
 {
-	if ( list->findItem(text,TQt::ExactMatch) == 0)
+	if (!list->findItem(text,TQt::ExactMatch))
 		return false;
 	else
 		return true;
diff --git a/kmplot/kmplot/kparametereditor.h b/kmplot/kmplot/kparametereditor.h
index 3c3b6c9c..696dbec9 100644
--- a/kmplot/kmplot/kparametereditor.h
+++ b/kmplot/kmplot/kparametereditor.h
@@ -40,7 +40,7 @@ class KParameterEditor : public QParameterEditor
 TQ_OBJECT
   
 public:
-    KParameterEditor(XParser *, TQValueList<ParameterValueItem> *, TQWidget *parent = 0, const char *name = 0);
+    KParameterEditor(XParser *, TQValueList<ParameterValueItem> *, TQWidget *parent = nullptr, const char *name = nullptr);
     ~KParameterEditor();
     
 public slots:
diff --git a/kmplot/kmplot/kprinterdlg.h b/kmplot/kmplot/kprinterdlg.h
index 92a57246..c1006f43 100644
--- a/kmplot/kmplot/kprinterdlg.h
+++ b/kmplot/kmplot/kprinterdlg.h
@@ -45,7 +45,7 @@ class KPrinterDlg : public KPrintDialogPage
   
 public:
 	/// Getting the common arguments.
-	KPrinterDlg( TQWidget *parent = 0, const char *name = 0 );
+	KPrinterDlg( TQWidget *parent = nullptr, const char *name = nullptr );
 
 	/// Reimplemented.
 	void getOptions( TQMap<TQString, TQString>& opts, bool include_def = false );
diff --git a/kmplot/kmplot/ksliderwindow.cpp b/kmplot/kmplot/ksliderwindow.cpp
index f56e562e..d9eae8a6 100644
--- a/kmplot/kmplot/ksliderwindow.cpp
+++ b/kmplot/kmplot/ksliderwindow.cpp
@@ -61,9 +61,9 @@ KSliderWindow::KSliderWindow(TQWidget* parent, int num ) :
 	installEventFilter(this);
 	
 	m_popupmenu = new TDEPopupMenu(this);
-	TDEAction *mnuMinValue = new TDEAction(i18n("&Change Minimum Value") ,0,this, TQ_SLOT( mnuMinValue_clicked() ),0);
+	TDEAction *mnuMinValue = new TDEAction(i18n("&Change Minimum Value") ,0,this, TQ_SLOT( mnuMinValue_clicked() ),nullptr);
 	mnuMinValue->plug(m_popupmenu);
-	TDEAction *mnuMaxValue = new TDEAction(i18n("&Change Maximum Value") ,0,this, TQ_SLOT( mnuMaxValue_clicked() ),0 );
+	TDEAction *mnuMaxValue = new TDEAction(i18n("&Change Maximum Value") ,0,this, TQ_SLOT( mnuMaxValue_clicked() ),nullptr );
 	mnuMaxValue->plug(m_popupmenu);
 }
 
diff --git a/kmplot/kmplot/main.cpp b/kmplot/kmplot/main.cpp
index 74c43088..5d07338f 100644
--- a/kmplot/kmplot/main.cpp
+++ b/kmplot/kmplot/main.cpp
@@ -44,7 +44,7 @@ static const char description[] =
 
 static TDECmdLineOptions options[] =
     {
-        { "+[URL]", I18N_NOOP( "File to open" ), 0 },
+        { "+[URL]", I18N_NOOP( "File to open" ), nullptr },
         TDECmdLineLastOption
         // INSERT YOUR COMMANDLINE OPTIONS HERE
     };
@@ -57,7 +57,7 @@ int main( int argc, char **argv )
 	    I18N_NOOP( "KmPlot" ),
 	    KP_VERSION, description, TDEAboutData::License_GPL,
 	    "(c) 2000-2002, Klaus-Dieter MÃ¶ller",
-	    0,
+	    nullptr,
 	    "http://edu.kde.org/kmplot/" );
 	aboutData.addAuthor(
 	    "Klaus-Dieter MÃ¶ller", I18N_NOOP( "Original Author" ) ,
diff --git a/kmplot/kmplot/parser.cpp b/kmplot/kmplot/parser.cpp
index 13d37681..7f53bb77 100644
--- a/kmplot/kmplot/parser.cpp
+++ b/kmplot/kmplot/parser.cpp
@@ -84,8 +84,8 @@ Parser::Mfkt Parser::mfkttab[ FANZ ]=
 Ufkt::Ufkt()
 {
 	id = 0;
-	mem = 0;
-	mptr = 0;
+	mem = nullptr;
+	mptr = nullptr;
 	k = 0;
 	oldy = 0;
 	f_mode = true;
@@ -344,7 +344,7 @@ double Parser::fkt(Ufkt *it, double const x)
 int Parser::addfkt(TQString str)
 {
 	TQString const extstr = str;
-	stkptr=stack=0;
+	stkptr=stack=nullptr;
 	err=0;
 	errpos=1;
 	const int p1=str.find('(');
@@ -393,7 +393,7 @@ int Parser::addfkt(TQString str)
         TQString const fname = str.left(p1);
         Ufkt *temp = &ufkt.last();
 	temp->fstr=extstr;
-        temp->mptr = 0;
+        temp->mptr = nullptr;
         temp->fname=fname;
         temp->fvar=str.mid(p1+1, p2-p1-1);
         if(p2<p3) temp->fpar=str.mid(p2+1, p3-p2-1);
@@ -531,7 +531,7 @@ bool Parser::delfkt( Ufkt *item)
 	kdDebug() << "Deleting id:" << item->id << endl;
 	if (!item->dep.isEmpty())
 	{
-	  KMessageBox::error(0,i18n("This function is depending on an other function"));
+	  KMessageBox::error(nullptr,i18n("This function is depending on an other function"));
 	  return false;
 	}
 	for(TQValueVector<Ufkt>::iterator it1=ufkt.begin(); it1!=ufkt.end(); ++it1)
@@ -958,43 +958,43 @@ int Parser::parserError(bool showMessageBox)
                 return err;
         switch(err)
 	{
-                case 1:  KMessageBox::error(0, i18n("Parser error at position %1:\n"
+                case 1:  KMessageBox::error(nullptr, i18n("Parser error at position %1:\n"
 		                                      "Syntax error").arg(TQString::number(errpos)), "KmPlot");
                         break;
-                case 2:  KMessageBox::error(0, i18n("Parser error at position %1:\n"
+                case 2:  KMessageBox::error(nullptr, i18n("Parser error at position %1:\n"
 		                                      "Missing parenthesis").arg(TQString::number(errpos)), "KmPlot");
                         break;
-                case 3:  KMessageBox::error(0, i18n("Parser error at position %1:\n"
+                case 3:  KMessageBox::error(nullptr, i18n("Parser error at position %1:\n"
 		                                      "Function name unknown").arg(TQString::number(errpos)), "KmPlot");
                         break;
-                case 4:  KMessageBox::error(0, i18n("Parser error at position %1:\n"
+                case 4:  KMessageBox::error(nullptr, i18n("Parser error at position %1:\n"
 		                                      "Void function variable").arg(TQString::number(errpos)), "KmPlot");
                         break;
-                case 5:  KMessageBox::error(0, i18n("Parser error at position %1:\n"
+                case 5:  KMessageBox::error(nullptr, i18n("Parser error at position %1:\n"
 		                                      "Too many functions").arg(TQString::number(errpos)), "KmPlot");
                         break;
-                case 6:  KMessageBox::error(0, i18n("Parser error at position %1:\n"
+                case 6:  KMessageBox::error(nullptr, i18n("Parser error at position %1:\n"
 		                                      "Token-memory overflow").arg(TQString::number(errpos)), "KmPlot");
                         break;
-                case 7:  KMessageBox::error(0, i18n("Parser error at position %1:\n"
+                case 7:  KMessageBox::error(nullptr, i18n("Parser error at position %1:\n"
 		                                      "Stack overflow").arg(TQString::number(errpos)), "KmPlot");
                         break;
-                case 8:  KMessageBox::error(0, i18n("Parser error at position %1:\n"
+                case 8:  KMessageBox::error(nullptr, i18n("Parser error at position %1:\n"
 		                                      "Name of function not free.").arg(TQString::number(errpos)), "KmPlot");
                         break;
-                case 9:  KMessageBox::error(0, i18n("Parser error at position %1:\n"
+                case 9:  KMessageBox::error(nullptr, i18n("Parser error at position %1:\n"
 		                                      "recursive function not allowed.").arg(TQString::number(errpos)), "KmPlot");
                         break;
-                case 10:  KMessageBox::error(0, i18n("Could not find a defined constant at position %1." ).arg(TQString::number(errpos)),
+                case 10:  KMessageBox::error(nullptr, i18n("Could not find a defined constant at position %1." ).arg(TQString::number(errpos)),
                                                                 "KmPlot");
                         break;
-                case 11:  KMessageBox::error(0, i18n("Empty function"), "KmPlot");
+                case 11:  KMessageBox::error(nullptr, i18n("Empty function"), "KmPlot");
                         break;
-                case 12:  KMessageBox::error(0, i18n("The function name is not allowed to contain capital letters."), "KmPlot");
+                case 12:  KMessageBox::error(nullptr, i18n("The function name is not allowed to contain capital letters."), "KmPlot");
                         break;
-                case 13:  KMessageBox::error(0, i18n("Function could not be found."), "KmPlot");
+                case 13:  KMessageBox::error(nullptr, i18n("Function could not be found."), "KmPlot");
                         break;
-		case 14:  KMessageBox::error(0, i18n("The expression must not contain user-defined constants."), "KmPlot");
+		case 14:  KMessageBox::error(nullptr, i18n("The expression must not contain user-defined constants."), "KmPlot");
 			break;
 	}
         return err;
diff --git a/kmplot/kmplot/xparser.cpp b/kmplot/kmplot/xparser.cpp
index 624b4883..0a06dfeb 100644
--- a/kmplot/kmplot/xparser.cpp
+++ b/kmplot/kmplot/xparser.cpp
@@ -117,7 +117,7 @@ bool XParser::getext( Ufkt *item, const TQString fstr )
 
 	if ( errflg )
 	{
-		KMessageBox::error( 0, i18n( "Error in extension." ) );
+		KMessageBox::error( nullptr, i18n( "Error in extension." ) );
 		return false;
 	}
 	else
@@ -766,7 +766,7 @@ bool XParser::sendFunction(int id, const TQString &dcopclient_target)
 			str_list.append(*it);
 	if ( str_list.isEmpty() )
 	{
-		KMessageBox::error(0, i18n("There are no other Kmplot instances running"));
+		KMessageBox::error(nullptr, i18n("There are no other Kmplot instances running"));
 		return false;
 	}
 	
@@ -804,7 +804,7 @@ bool XParser::sendFunction(int id, const TQString &dcopclient_target)
 	bool ok = tdeApp->dcopClient()->call( str_result.utf8(), "Parser", "addFunction(TQString,bool,bool,bool,bool,bool,int,int,int,int,TQString,TQString,TQString,TQString,double,TQRgb,TQRgb,TQRgb,TQRgb,TQStringList,int)", parameters, replay_type, replay_data, false);
 	if (!ok)
 	{
-		KMessageBox::error(0, i18n("An error appeared during the transfer"));
+		KMessageBox::error(nullptr, i18n("An error appeared during the transfer"));
 		return false;
 	}
 
@@ -813,7 +813,7 @@ bool XParser::sendFunction(int id, const TQString &dcopclient_target)
 	replay_arg >> result;
 	if (!result)
 	{
-		KMessageBox::error(0, i18n("An error appeared during the transfer"));
+		KMessageBox::error(nullptr, i18n("An error appeared during the transfer"));
 		return false;
 	}
 	
diff --git a/kpercentage/kpercentage/kanimation.cpp b/kpercentage/kpercentage/kanimation.cpp
index 8716b481..45e15f4f 100644
--- a/kpercentage/kpercentage/kanimation.cpp
+++ b/kpercentage/kpercentage/kanimation.cpp
@@ -47,7 +47,7 @@ KFrame *KScene::nextFrame()
 	if ( current_frame_number < count() )
 		return at( current_frame_number );
 	else
-		return 0;
+		return nullptr;
 }
 
 KFrame *KScene::currentFrame()
@@ -55,7 +55,7 @@ KFrame *KScene::currentFrame()
 	if ( current_frame_number < count() )
 		return at( current_frame_number );
 	else
-		return 0;
+		return nullptr;
 }
 
 void KScene::addFollowingScene( const TQString scene_name )
@@ -82,10 +82,10 @@ void KScene::setToStart()
 
 KStoryBoard::KStoryBoard( const TQString filename ) : TQDict<KScene>()
 {
-	current_scene = 0;
+	current_scene = nullptr;
 
 	TQFile f( filename );
-	KScene *c_scene = 0;
+	KScene *c_scene = nullptr;
 
 	if ( f.open( IO_ReadOnly ) )           // file opened successfully
 	{
@@ -150,7 +150,7 @@ KStoryBoard::KStoryBoard( const TQString filename ) : TQDict<KScene>()
 		if ( current_scene )
 			return current_scene->currentFrame();
 		else
-			return 0;
+			return nullptr;
 	}
 
 	KFrame *KStoryBoard::nextFrame()
@@ -170,12 +170,12 @@ KStoryBoard::KStoryBoard( const TQString filename ) : TQDict<KScene>()
 					return current_scene->currentFrame();
 				}
 				else
-					return 0;
+					return nullptr;
 			}
 		}
 		else
 		{
-			return 0;
+			return nullptr;
 		}
 	}
 
diff --git a/kpercentage/kpercentage/kpercentage.cpp b/kpercentage/kpercentage/kpercentage.cpp
index 15553b7c..92f183e7 100644
--- a/kpercentage/kpercentage/kpercentage.cpp
+++ b/kpercentage/kpercentage/kpercentage.cpp
@@ -41,7 +41,7 @@
 #include "ksplashscreen.h"
 
 KPercentage::KPercentage( const char *name ) :
-        KDialog ( 0, name )
+        KDialog ( nullptr, name )
 {
     // show splash screen
     KSplashScreen * splash_screen = new KSplashScreen( this, "splashscreen" );
diff --git a/kpercentage/kpercentage/kpercentage.h b/kpercentage/kpercentage/kpercentage.h
index 54ac9bfd..1fe8c6f5 100644
--- a/kpercentage/kpercentage/kpercentage.h
+++ b/kpercentage/kpercentage/kpercentage.h
@@ -52,7 +52,7 @@ class KPercentage : public KDialog
   
 public:
     /** construtor */
-    KPercentage( const char *name=0 );
+    KPercentage( const char *name=nullptr );
 
     /** The exercise dialog */
     KPercentMain * percent_main;
diff --git a/kpercentage/kpercentage/kpercentmain.cpp b/kpercentage/kpercentage/kpercentmain.cpp
index dc395fc4..ed8e8d9e 100644
--- a/kpercentage/kpercentage/kpercentmain.cpp
+++ b/kpercentage/kpercentage/kpercentmain.cpp
@@ -190,7 +190,7 @@ KPercentMain::KPercentMain( TQWidget *parent, const char *name ) :
 
 
     /** this is to tell rand() to be randomizing */
-    srandom( time( 0 ) );
+    srandom( time( nullptr ) );
 
 }
 
diff --git a/kpercentage/kpercentage/kpercentmain.h b/kpercentage/kpercentage/kpercentmain.h
index 27db8ea9..765c2381 100644
--- a/kpercentage/kpercentage/kpercentmain.h
+++ b/kpercentage/kpercentage/kpercentmain.h
@@ -46,7 +46,7 @@ class KPercentMain : public KDialog
     TQ_OBJECT
   
     public:
-        KPercentMain( TQWidget *parent, const char *name = 0 );
+        KPercentMain( TQWidget *parent, const char *name = nullptr );
         /** checks, if the task is solved right */
         bool validateTask();
         /** prepares the dialog for a new task */
diff --git a/kpercentage/kpercentage/ksplashscreen.cpp b/kpercentage/kpercentage/ksplashscreen.cpp
index 7f5359dd..4727d1f0 100644
--- a/kpercentage/kpercentage/ksplashscreen.cpp
+++ b/kpercentage/kpercentage/ksplashscreen.cpp
@@ -32,7 +32,7 @@
 
 /* creates the splash window without titlebar and border */
 KSplashScreen::KSplashScreen( KPercentage *percentage, const char *name ) :
-        KDialog( 0L, name, false, TQWidget::WStyle_Customize | TQWidget::WStyle_NoBorder )
+        KDialog( nullptr, name, false, TQWidget::WStyle_Customize | TQWidget::WStyle_NoBorder )
 {
     percentage_window = percentage;
     resize( 380, 300 );
diff --git a/kpercentage/kpercentage/main.cpp b/kpercentage/kpercentage/main.cpp
index 0bb4b3b3..e650afe2 100644
--- a/kpercentage/kpercentage/main.cpp
+++ b/kpercentage/kpercentage/main.cpp
@@ -42,7 +42,7 @@ int main( int argc, char *argv[] )
         I18N_NOOP( "KPercentage" ),
         KPERCENTAGE_VERSION, description, TDEAboutData::License_GPL,
         "(c) 2001-2007, Matthias Messmer",
-        0, 0,
+        nullptr, nullptr,
         "submit@bugs.trinitydesktop.org"
     );
     aboutData.addAuthor( "Matthias Messmer", I18N_NOOP( "coding, coding and coding" ), "bmlmessmer@web.de" );
diff --git a/kstars/kstars/addcatdialog.cpp b/kstars/kstars/addcatdialog.cpp
index ffb3f65c..654235bf 100644
--- a/kstars/kstars/addcatdialog.cpp
+++ b/kstars/kstars/addcatdialog.cpp
@@ -87,7 +87,7 @@ void AddCatDialog::slotHelp() {
 			i18n( "The fields should be separated by whitespace.  In addition, the catalog "
 						"may contain comment lines beginning with \'#\'." );
 
-	KMessageBox::information( 0, message, i18n( "Help on custom catalog file format" ) );
+	KMessageBox::information( nullptr, message, i18n( "Help on custom catalog file format" ) );
 }
 
 /* Attempt to parse the catalog data file specified in the DataURL box.
@@ -194,7 +194,7 @@ void AddCatDialog::slotShowDataFile() {
 
 void AddCatDialog::slotPreviewCatalog() {
 	if ( validateDataFile() ) {
-		KMessageBox::informationList( 0, i18n( "Preview of %1" ).arg( acd->CatalogName->text() ),
+		KMessageBox::informationList( nullptr, i18n( "Preview of %1" ).arg( acd->CatalogName->text() ),
 			TQStringList::split( "\n", CatalogContents ), i18n( "Catalog Preview" ) );
 	}
 }
@@ -208,7 +208,7 @@ void AddCatDialog::slotCreateCatalog() {
 		if ( TQFile::exists( acd->CatalogURL->url() ) )
 		{
 			KURL u( acd->CatalogURL->url() );
-			int r=KMessageBox::warningContinueCancel( 0,
+			int r=KMessageBox::warningContinueCancel( nullptr,
 									i18n( "A file named \"%1\" already exists. "
 											"Overwrite it?" ).arg( u.fileName() ),
 									i18n( "Overwrite File?" ),
@@ -219,7 +219,7 @@ void AddCatDialog::slotCreateCatalog() {
 
 		TQFile OutFile( acd->CatalogURL->url() );
 		if ( ! OutFile.open( IO_WriteOnly ) ) {
-			KMessageBox::sorry( 0, 
+			KMessageBox::sorry( nullptr, 
 				i18n( "Could not open the file %1 for writing." ).arg( acd->CatalogURL->url() ), 
 				i18n( "Error Opening Output File" ) );
 		} else {
diff --git a/kstars/kstars/addcatdialog.h b/kstars/kstars/addcatdialog.h
index 385c2fe3..6c09d2cd 100644
--- a/kstars/kstars/addcatdialog.h
+++ b/kstars/kstars/addcatdialog.h
@@ -40,7 +40,7 @@ class AddCatDialog : public KDialogBase  {
 public:
 /**Default constructor
 	*/
-	AddCatDialog( TQWidget *parent=0 );
+	AddCatDialog( TQWidget *parent=nullptr );
 
 /**Destructor (empty)
 	*/
diff --git a/kstars/kstars/addlinkdialog.cpp b/kstars/kstars/addlinkdialog.cpp
index 9649d719..385939e1 100644
--- a/kstars/kstars/addlinkdialog.cpp
+++ b/kstars/kstars/addlinkdialog.cpp
@@ -52,7 +52,7 @@ void AddLinkDialog::checkURL( void ) {
 	} else {   //If not, print a warning message box that offers to open the browser to a search engine.
 		TQString message = i18n( "The URL is not valid. Would you like to open a browser window\nto the Google search engine?" );
 		TQString caption = i18n( "Invalid URL" );
-		if ( KMessageBox::warningYesNo( 0, message, caption, i18n("Browse Google"), i18n("Do Not Browse") )==KMessageBox::Yes ) {
+		if ( KMessageBox::warningYesNo( nullptr, message, caption, i18n("Browse Google"), i18n("Do Not Browse") )==KMessageBox::Yes ) {
 			tdeApp->invokeBrowser( "http://www.google.com" );
 		}
 	}
diff --git a/kstars/kstars/addlinkdialog.h b/kstars/kstars/addlinkdialog.h
index 23206924..b11e08f2 100644
--- a/kstars/kstars/addlinkdialog.h
+++ b/kstars/kstars/addlinkdialog.h
@@ -39,7 +39,7 @@ class AddLinkDialog : public KDialogBase  {
   
 public:
 /**Constructor. */
-	AddLinkDialog( TQWidget* parent = 0, const TQString &oname=i18n("object") );
+	AddLinkDialog( TQWidget* parent = nullptr, const TQString &oname=i18n("object") );
 
 /**Destructor (empty) */
 	~AddLinkDialog() {}
diff --git a/kstars/kstars/ccdpreviewwg.cpp b/kstars/kstars/ccdpreviewwg.cpp
index aee2a6d5..eb36da8c 100644
--- a/kstars/kstars/ccdpreviewwg.cpp
+++ b/kstars/kstars/ccdpreviewwg.cpp
@@ -261,17 +261,17 @@ void CCDPreviewWG::captureImage()
 	if ( tmpfile.name() == fname )
 	{ //need to upload to remote location
 	
-	  if ( ! TDEIO::NetAccess::upload( tmpfile.name(), currentFileURL, (TQWidget*) 0 ) )
+	  if ( ! TDEIO::NetAccess::upload( tmpfile.name(), currentFileURL, (TQWidget*) nullptr ) )
 	  {
 		TQString message = i18n( "Could not upload image to remote location: %1" ).arg( currentFileURL.prettyURL() );
-		KMessageBox::sorry( 0, message, i18n( "Could not upload file" ) );
+		KMessageBox::sorry( nullptr, message, i18n( "Could not upload file" ) );
 	  }
 	}
   }
   else
   {
 		TQString message = i18n( "Invalid URL: %1" ).arg( currentFileURL.url() );
-		KMessageBox::sorry( 0, message, i18n( "Invalid URL" ) );
+		KMessageBox::sorry( nullptr, message, i18n( "Invalid URL" ) );
   }
 
 }
diff --git a/kstars/kstars/ccdpreviewwg.h b/kstars/kstars/ccdpreviewwg.h
index 7c785f39..53031d55 100644
--- a/kstars/kstars/ccdpreviewwg.h
+++ b/kstars/kstars/ccdpreviewwg.h
@@ -34,7 +34,7 @@ enum Pixelorder {PIXELORDER_NORMAL=1, PIXELORDER_DUAL=2};
   
    
     public:
-      CCDPreviewWG(INDIStdDevice *inStdDev, TQWidget * parent =0, const char * name =0);
+      CCDPreviewWG(INDIStdDevice *inStdDev, TQWidget * parent =nullptr, const char * name =nullptr);
       ~CCDPreviewWG();
  
    friend class CCDVideoWG;
@@ -77,7 +77,7 @@ enum Pixelorder {PIXELORDER_NORMAL=1, PIXELORDER_DUAL=2};
   
    
     public:
-      CCDVideoWG(TQWidget * parent =0, const char * name =0);
+      CCDVideoWG(TQWidget * parent =nullptr, const char * name =nullptr);
       ~CCDVideoWG();
       
       friend class CCDPreviewWG;
diff --git a/kstars/kstars/colorscheme.cpp b/kstars/kstars/colorscheme.cpp
index 9c0188fa..dd1a9b79 100644
--- a/kstars/kstars/colorscheme.cpp
+++ b/kstars/kstars/colorscheme.cpp
@@ -255,7 +255,7 @@ bool ColorScheme::save( const TQString &name ) {
 
 		if ( file.exists() || !file.open( IO_ReadWrite | IO_Append ) ) {
 			TQString message = i18n( "Local color scheme file could not be opened.\nScheme cannot be recorded." );
-			KMessageBox::sorry( 0, message, i18n( "Could Not Open File" ) );
+			KMessageBox::sorry( nullptr, message, i18n( "Could Not Open File" ) );
 			return false;
 		} else {
 			TQTextStream stream( &file );
@@ -273,7 +273,7 @@ bool ColorScheme::save( const TQString &name ) {
 
 		if ( !file.open( IO_ReadWrite | IO_Append ) ) {
 			TQString message = i18n( "Local color scheme index file could not be opened.\nScheme cannot be recorded." );
-			KMessageBox::sorry( 0, message, i18n( "Could Not Open File" ) );
+			KMessageBox::sorry( nullptr, message, i18n( "Could Not Open File" ) );
 			return false;
 		} else {
 			TQTextStream stream( &file );
@@ -282,7 +282,7 @@ bool ColorScheme::save( const TQString &name ) {
 		}
 	} else {
 		TQString message = i18n( "Invalid filename requested.\nScheme cannot be recorded." );
-		KMessageBox::sorry( 0, message, i18n( "Invalid Filename" ) );
+		KMessageBox::sorry( nullptr, message, i18n( "Invalid Filename" ) );
 		return false;
 	}
 
diff --git a/kstars/kstars/conbridlg.h b/kstars/kstars/conbridlg.h
index 046293ef..1d46d9b1 100644
--- a/kstars/kstars/conbridlg.h
+++ b/kstars/kstars/conbridlg.h
@@ -31,7 +31,7 @@ class ContrastBrightnessDlg : public KDialogBase {
 	TQ_OBJECT
   
  public:
-   ContrastBrightnessDlg(TQWidget *parent=0);
+   ContrastBrightnessDlg(TQWidget *parent=nullptr);
    ~ContrastBrightnessDlg();
    
   TQSize sizeHint() const;
diff --git a/kstars/kstars/deepskyobject.cpp b/kstars/kstars/deepskyobject.cpp
index cf314651..0ee87129 100644
--- a/kstars/kstars/deepskyobject.cpp
+++ b/kstars/kstars/deepskyobject.cpp
@@ -50,7 +50,7 @@ DeepSkyObject::DeepSkyObject( int t, dms r, dms d, float m,
 	PGC = pgc;
 	UGC = ugc;
 	setCatalog( cat );
-	Image = 0;
+	Image = nullptr;
 }
 
 DeepSkyObject::DeepSkyObject( int t, double r, double d, float m,
@@ -63,7 +63,7 @@ DeepSkyObject::DeepSkyObject( int t, double r, double d, float m,
 	PGC = pgc;
 	UGC = ugc;
 	setCatalog( cat );
-	Image = 0;
+	Image = nullptr;
 }
 
 float DeepSkyObject::e( void ) const {
@@ -87,7 +87,7 @@ void DeepSkyObject::setCatalog( const TQString &cat ) {
 
 TQImage* DeepSkyObject::readImage( void ) {
 	TQFile file;
-	if ( Image==0 ) { //Image not currently set; try to load it from disk.
+	if (!Image) { //Image not currently set; try to load it from disk.
 		TQString fname = name().lower().replace( TQRegExp(" "), "" ) + ".png";
 
 		if ( KSUtils::openDataFile( file, fname ) ) {
@@ -99,7 +99,7 @@ TQImage* DeepSkyObject::readImage( void ) {
 	return Image;
 }
 
-void DeepSkyObject::deleteImage() { delete Image; Image = 0; }
+void DeepSkyObject::deleteImage() { delete Image; Image = nullptr; }
 
 void DeepSkyObject::drawSymbol( TQPainter &psky, int x, int y, double PositionAngle, double zoom, double scale ) {
 	// if size is 0.0 set it to 1.0, this are normally stars (type 0 and 1)
diff --git a/kstars/kstars/detaildialog.cpp b/kstars/kstars/detaildialog.cpp
index 3496ead4..8bd7752e 100644
--- a/kstars/kstars/detaildialog.cpp
+++ b/kstars/kstars/detaildialog.cpp
@@ -75,7 +75,7 @@ ClickLabel::ClickLabel( TQWidget *parent, const char *name ) : TQLabel( parent,
 DetailDialog::DetailDialog(SkyObject *o, const KStarsDateTime &ut, GeoLocation *geo,
 		TQWidget *parent, const char *name ) :
 		KDialogBase( KDialogBase::Tabbed, i18n( "Object Details" ), Close, Close, parent, name ) ,
-		selectedObject(o), ksw((KStars*)parent), Data(0), Pos(0), Links(0), Adv(0), Log(0)
+		selectedObject(o), ksw((KStars*)parent), Data(nullptr), Pos(nullptr), Links(nullptr), Adv(nullptr), Log(nullptr)
 {
 	//Modify color palette
 	setPaletteBackgroundColor( palette().color( TQPalette::Active, TQColorGroup::Base ) );
@@ -124,9 +124,9 @@ void DetailDialog::createGeneralTab()
 
 	//Fill in the data fields
 	//Contents depend on type of object
-	StarObject *s = 0L;
-	DeepSkyObject *dso = 0L;
-	KSPlanetBase *ps = 0L;
+	StarObject *s = nullptr;
+	DeepSkyObject *dso = nullptr;
+	KSPlanetBase *ps = nullptr;
 	TQString pname(""), oname("");
 
 	switch ( selectedObject->type() ) {
@@ -658,7 +658,7 @@ void DetailDialog::removeLinkDialog()
 		currentItemTitle = Links->ImagesList->currentText();
 	}
 
-	if (KMessageBox::warningContinueCancel( 0, i18n("Are you sure you want to remove the %1 link?").arg(currentItemTitle), i18n("Delete Confirmation"),KStdGuiItem::del())!=KMessageBox::Continue)
+	if (KMessageBox::warningContinueCancel( nullptr, i18n("Are you sure you want to remove the %1 link?").arg(currentItemTitle), i18n("Delete Confirmation"),KStdGuiItem::del())!=KMessageBox::Continue)
 		return;
 
 	switch (type)
@@ -805,7 +805,7 @@ void DetailDialog::populateADVTree(TQListViewItem *parent)
 
 void DetailDialog::forkTree(TQListViewItem *parent)
 {
-	TQListViewItem *current = 0;
+	TQListViewItem *current = nullptr;
 	if (parent)
 		current = new TQListViewItem(parent, treeIt->current()->Name);
 	else
@@ -938,7 +938,7 @@ void DetailDialog::centerTelescope()
 
        if (ConnectEle->state == PS_OFF)
        {
-	 KMessageBox::error(0, i18n("Telescope %1 is offline. Please connect and retry again.").arg(indidev->label));
+	 KMessageBox::error(nullptr, i18n("Telescope %1 is offline. Please connect and retry again.").arg(indidev->label));
 	 return;
        }
 
@@ -1022,7 +1022,7 @@ void DetailDialog::centerTelescope()
   }
 
   // We didn't find any telescopes
-  KMessageBox::sorry(0, i18n("KStars did not find any active telescopes."));
+  KMessageBox::sorry(nullptr, i18n("KStars did not find any active telescopes."));
 
 }
 
diff --git a/kstars/kstars/detaildialog.h b/kstars/kstars/detaildialog.h
index 1d025c7c..a37ca8f7 100644
--- a/kstars/kstars/detaildialog.h
+++ b/kstars/kstars/detaildialog.h
@@ -58,7 +58,7 @@ class LogEdit : public KTextEdit {
 	TQ_OBJECT
   
 public:
-	LogEdit( TQWidget *parent=0, const char *name=0 );
+	LogEdit( TQWidget *parent=nullptr, const char *name=nullptr );
 	~LogEdit() {}
 	
 signals:
@@ -76,7 +76,7 @@ class ClickLabel : public TQLabel {
 	TQ_OBJECT
   
 public:
-	ClickLabel( TQWidget *parent=0, const char *name=0 );
+	ClickLabel( TQWidget *parent=nullptr, const char *name=nullptr );
 	~ClickLabel() {}
 	
 signals:
@@ -110,7 +110,7 @@ class DetailDialog : public KDialogBase  {
 public: 
 /**Constructor
 	*/
-	DetailDialog(SkyObject *o, const KStarsDateTime &ut, GeoLocation *geo, TQWidget *parent=0, const char *name=0);
+	DetailDialog(SkyObject *o, const KStarsDateTime &ut, GeoLocation *geo, TQWidget *parent=nullptr, const char *name=nullptr);
 	
 /**Destructor (empty)
 	*/
diff --git a/kstars/kstars/devicemanager.cpp b/kstars/kstars/devicemanager.cpp
index df91c220..e15ba0a6 100644
--- a/kstars/kstars/devicemanager.cpp
+++ b/kstars/kstars/devicemanager.cpp
@@ -96,13 +96,13 @@ bool DeviceManager::indiConnect(TQString inHost, TQString inPort)
 
 	if ( (serverFD = socket(AF_INET, SOCK_STREAM, 0)) == -1)
 	{
-	 KMessageBox::error(0, i18n("Cannot create socket"));
+	 KMessageBox::error(nullptr, i18n("Cannot create socket"));
 	 return false;
 	}
 
 	if ( ::connect(serverFD, (struct sockaddr*) &pin, sizeof(pin)) == -1)
 	{
-	  KMessageBox::error(0, errMsg);
+	  KMessageBox::error(nullptr, errMsg);
 	  serverFD = -1;
 	  return false;
 	}
@@ -120,7 +120,7 @@ bool DeviceManager::indiConnect(TQString inHost, TQString inPort)
 
 	if (!serverFP)
 	{
-	 KMessageBox::error(0, i18n("Cannot read server file descriptor"));
+	 KMessageBox::error(nullptr, i18n("Cannot read server file descriptor"));
 	 serverFD = -1;
 	 return false;
 	}
@@ -155,7 +155,7 @@ void DeviceManager::dataReceived()
 	    sNotifier->disconnect();
 	    close(serverFD);
 	    parent->removeDeviceMgr(mgrID);
-	    KMessageBox::error(0, TQString::fromLatin1(errmsg));
+	    KMessageBox::error(nullptr, TQString::fromLatin1(errmsg));
 
             return;
 	}
diff --git a/kstars/kstars/dmsbox.h b/kstars/kstars/dmsbox.h
index 7b04b411..f2d2490a 100644
--- a/kstars/kstars/dmsbox.h
+++ b/kstars/kstars/dmsbox.h
@@ -52,7 +52,7 @@ public:
 		*@param deg if true use deg/arcmin/arcsec; otherwise 
 		*           use hours/min/sec.
 		*/
-	dmsBox(TQWidget *parent, const char *ni=0, bool deg=true);
+	dmsBox(TQWidget *parent, const char *ni=nullptr, bool deg=true);
 
 	/**Destructor (empty)*/
 	~dmsBox();
@@ -112,7 +112,7 @@ public:
 		*@param ok set to true if a dms object was succedssfully created.
 		*@return a dms object constructed from the fields of the dmsbox
 		*/
-	dms createDms(bool deg=true, bool *ok=0);
+	dms createDms(bool deg=true, bool *ok=nullptr);
 
 	/**@return a boolean indicating if object contains degrees or hours
 		*/
diff --git a/kstars/kstars/draglistbox.h b/kstars/kstars/draglistbox.h
index ffafdac8..af1b6581 100644
--- a/kstars/kstars/draglistbox.h
+++ b/kstars/kstars/draglistbox.h
@@ -36,7 +36,7 @@ class DragListBox : public TDEListBox {
 public:
 /**@short Default constructor
  */
-	DragListBox( TQWidget *parent = 0, const char *name = 0, WFlags = 0 );
+	DragListBox( TQWidget *parent = nullptr, const char *name = nullptr, WFlags = 0 );
 
 /**@short Default destructor
  */
diff --git a/kstars/kstars/filesource.cpp b/kstars/kstars/filesource.cpp
index 8e38d9a4..eb7d82e7 100644
--- a/kstars/kstars/filesource.cpp
+++ b/kstars/kstars/filesource.cpp
@@ -77,7 +77,7 @@ void FileSource::sendTo(TQDataSink *sink, int) {
 		data->openStarFile(fileNumber);
 	}
 	// check if more data are available
-	if (readingData == true && data->starFileReader != 0 && data->starFileReader->hasMoreLines() == true) {
+	if (readingData == true && data->starFileReader != nullptr && data->starFileReader->hasMoreLines() == true) {
 		readingData = true;
 	} else {
 		readingData = false;
diff --git a/kstars/kstars/finddialog.cpp b/kstars/kstars/finddialog.cpp
index ea9c0139..6e35e0d3 100644
--- a/kstars/kstars/finddialog.cpp
+++ b/kstars/kstars/finddialog.cpp
@@ -35,8 +35,8 @@
 
 FindDialog::FindDialog( TQWidget* parent ) :
 		KDialogBase( KDialogBase::Plain, i18n( "Find Object" ), Ok|Cancel, Ok, parent ),
-		vlay(0), hlay(0), SearchList(0), SearchBox(0), filterTypeLabel(0), filterType(0),
-		currentitem(0)
+		vlay(nullptr), hlay(nullptr), SearchList(nullptr), SearchBox(nullptr), filterTypeLabel(nullptr), filterType(nullptr),
+		currentitem(nullptr)
 {
 	TQFrame *page = plainPage();
 
@@ -85,7 +85,7 @@ FindDialog::FindDialog( TQWidget* parent ) :
 	vlay->activate();
 
 // no item currently set
-	currentitem = 0;
+	currentitem = nullptr;
 
 // no filters set
 	Filter = 0;
@@ -164,7 +164,7 @@ void FindDialog::filterByType() {
 void FindDialog::setListItemEnabled() {
 	SearchList->setSelected (0, true);
 	if (!SearchList->isSelected (0))
-		updateSelection (0);
+		updateSelection (nullptr);
 }
 
 void FindDialog::updateSelection (TQListBoxItem *it) {
@@ -197,9 +197,9 @@ void FindDialog::setFilter( int f ) {
 
 void FindDialog::slotOk() {
 	//If no valid object selected, show a sorry-box.  Otherwise, emit accept()
-	if ( currentItem() == 0 ) {
+	if (!currentItem()) {
 		TQString message = i18n( "No object named %1 found." ).arg( SearchBox->text() );
-		KMessageBox::sorry( 0, message, i18n( "Bad object name" ) );
+		KMessageBox::sorry( nullptr, message, i18n( "Bad object name" ) );
 	} else {
 		accept();
 	}
diff --git a/kstars/kstars/finddialog.h b/kstars/kstars/finddialog.h
index b7711209..ecbff0f9 100644
--- a/kstars/kstars/finddialog.h
+++ b/kstars/kstars/finddialog.h
@@ -52,7 +52,7 @@ public:
 /**Constructor. Creates all widgets and packs them in TQLayouts.  Connects
 	*Signals and Slots.  Runs initObjectList().
 	*/
-	FindDialog( TQWidget* parent = 0 );
+	FindDialog( TQWidget* parent = nullptr );
 
 /**Destructor
 	*/
diff --git a/kstars/kstars/fitshistogram.h b/kstars/kstars/fitshistogram.h
index 9952ebb9..408e09b5 100644
--- a/kstars/kstars/fitshistogram.h
+++ b/kstars/kstars/fitshistogram.h
@@ -32,7 +32,7 @@
   
    
    public:
-    FITSHistogram(TQWidget *parent, const char * name = 0);
+    FITSHistogram(TQWidget *parent, const char * name = nullptr);
     ~FITSHistogram();
     
     void constructHistogram(float *buffer);
diff --git a/kstars/kstars/fitsimage.cpp b/kstars/kstars/fitsimage.cpp
index 0caea3e2..2be251ab 100644
--- a/kstars/kstars/fitsimage.cpp
+++ b/kstars/kstars/fitsimage.cpp
@@ -240,7 +240,7 @@ int FITSImage::loadFits (const char *filename)
  fp = fopen (filename, "rb");
  if (!fp)
  {
-   KMessageBox::error(0, i18n("Cannot open file for reading"));
+   KMessageBox::error(nullptr, i18n("Cannot open file for reading"));
    return (-1);
  }
  fclose (fp);
@@ -248,18 +248,18 @@ int FITSImage::loadFits (const char *filename)
  ifp = fits_open (filename, "r");
  if (!ifp)
  {
-   KMessageBox::error(0, i18n("Error during open of FITS file"));
+   KMessageBox::error(nullptr, i18n("Error during open of FITS file"));
    return (-1);
  }
  if (ifp->n_pic <= 0)
  {
-   KMessageBox::error(0, i18n("FITS file keeps no displayable images"));
+   KMessageBox::error(nullptr, i18n("FITS file keeps no displayable images"));
    fits_close (ifp);
    return (-1);
  }
 
  //displayImage  = new TQImage();
- KProgressDialog fitsProgress(this, 0, i18n("FITS Viewer"), i18n("Loading FITS..."));
+ KProgressDialog fitsProgress(this, nullptr, i18n("FITS Viewer"), i18n("Loading FITS..."));
  
  hdl = fits_seek_image (ifp, 1);
  if (!hdl) return (-1);
@@ -277,7 +277,7 @@ int FITSImage::loadFits (const char *filename)
  //tempBuffer = (unsigned char  *) malloc (height * width * sizeof(unsigned char));
  if (!data)
  {
-  KMessageBox::error(0, i18n("Not enough memory to load FITS."));
+  KMessageBox::error(nullptr, i18n("Not enough memory to load FITS."));
   return (-1);
  }
  
@@ -351,7 +351,7 @@ int FITSImage::loadFits (const char *filename)
  viewportResizeEvent(nullptr);
  
  if (err)
-   KMessageBox::error(0, i18n("EOF encountered on reading."));
+   KMessageBox::error(nullptr, i18n("EOF encountered on reading."));
 
  fits_record_list * FRList = hdl->header_record_list;
  while (FRList)
diff --git a/kstars/kstars/fitsimage.h b/kstars/kstars/fitsimage.h
index 78a8db8c..61278c01 100644
--- a/kstars/kstars/fitsimage.h
+++ b/kstars/kstars/fitsimage.h
@@ -57,7 +57,7 @@ class FITSImage : public TQScrollView  {
 	friend class FITSChangeCommand;
 	friend class FITSProcessCommand;
 	
-	FITSImage(TQWidget * parent, const char * name = 0);
+	FITSImage(TQWidget * parent, const char * name = nullptr);
 	~FITSImage();
 	
 	enum scaleType { FITSAuto = 0 , FITSLinear, FITSLog, FITSSqrt, FITSCustom };
@@ -112,7 +112,7 @@ class FITSFrame : public TQFrame
   
   
     public:
-      FITSFrame(FITSImage * img, TQWidget * parent = 0, const char * name = 0);
+      FITSFrame(FITSImage * img, TQWidget * parent = nullptr, const char * name = nullptr);
       ~FITSFrame();
     
     private:
diff --git a/kstars/kstars/fitsprocess.cpp b/kstars/kstars/fitsprocess.cpp
index 79c3824c..fb63c9c7 100644
--- a/kstars/kstars/fitsprocess.cpp
+++ b/kstars/kstars/fitsprocess.cpp
@@ -47,7 +47,7 @@
    flatFrames.setAutoDelete(true);
    darkflatFrames.setAutoDelete(true);
    
-   KProgressDialog reduceProgress(0, 0, i18n("FITS Viewer"), i18n("Image Loading Process..."));
+   KProgressDialog reduceProgress(nullptr, nullptr, i18n("FITS Viewer"), i18n("Image Loading Process..."));
    reduceProgress.progressBar()->setTotalSteps(darkFiles.size() + flatFiles.size() + darkflatFiles.size());
    reduceProgress.setMinimumWidth(300);
    reduceProgress.show();
@@ -260,7 +260,7 @@ float FITSProcess::min(float *buf)
 
 void FITSProcess::reduce()
 {
-   KProgressDialog reduceProgress(0, 0, i18n("FITS Viewer"), i18n("Image Reduction Process..."));
+   KProgressDialog reduceProgress(nullptr, nullptr, i18n("FITS Viewer"), i18n("Image Reduction Process..."));
    reduceProgress.progressBar()->setTotalSteps(20);
    reduceProgress.setMinimumWidth(300);
    reduceProgress.show();
diff --git a/kstars/kstars/fitsviewer.cpp b/kstars/kstars/fitsviewer.cpp
index 484cb98a..0e09823e 100644
--- a/kstars/kstars/fitsviewer.cpp
+++ b/kstars/kstars/fitsviewer.cpp
@@ -213,7 +213,7 @@ void FITSViewer::slotClose()
     
   TQString caption = i18n( "Save Changes to FITS?" );
 		TQString message = i18n( "The current FITS file has unsaved changes.  Would you like to save before closing it?" );
-		int ans = KMessageBox::warningYesNoCancel( 0, message, caption, KStdGuiItem::save(), KStdGuiItem::discard() );
+		int ans = KMessageBox::warningYesNoCancel( nullptr, message, caption, KStdGuiItem::save(), KStdGuiItem::discard() );
 		if ( ans == KMessageBox::Yes )
 			fileSave();	
 		else if ( ans == KMessageBox::No ) 
@@ -232,7 +232,7 @@ void FITSViewer::closeEvent(TQCloseEvent *ev)
     
   TQString caption = i18n( "Save Changes to FITS?" );
 		TQString message = i18n( "The current FITS file has unsaved changes.  Would you like to save before closing it?" );
-		int ans = KMessageBox::warningYesNoCancel( 0, message, caption, KStdGuiItem::save(), KStdGuiItem::discard() );
+		int ans = KMessageBox::warningYesNoCancel( nullptr, message, caption, KStdGuiItem::save(), KStdGuiItem::discard() );
 		if ( ans == KMessageBox::Yes )
 			fileSave();	
 		else if ( ans == KMessageBox::No ) 
@@ -251,7 +251,7 @@ void FITSViewer::show_fits_errors()
   char *msg;
   /* Write out error messages of FITS-Library */
   while ((msg = fits_get_error ()))
-     KMessageBox::error(0, msg);
+     KMessageBox::error(nullptr, msg);
 }
 
 float * FITSViewer::loadData(const char *filename, float *buffer)
@@ -270,7 +270,7 @@ float * FITSViewer::loadData(const char *filename, float *buffer)
  fp = fopen (filename, "rb");
  if (!fp)
  {
-   KMessageBox::error(0, i18n("Cannot open file for reading"));
+   KMessageBox::error(nullptr, i18n("Cannot open file for reading"));
    return (nullptr);
  }
  fclose (fp);
@@ -278,12 +278,12 @@ float * FITSViewer::loadData(const char *filename, float *buffer)
  ifp = fits_open (filename, "r");
  if (!ifp)
  {
-   KMessageBox::error(0, i18n("Error during open of FITS file"));
+   KMessageBox::error(nullptr, i18n("Error during open of FITS file"));
    return (nullptr);
  }
  if (ifp->n_pic <= 0)
  {
-   KMessageBox::error(0, i18n("FITS file keeps no displayable images"));
+   KMessageBox::error(nullptr, i18n("FITS file keeps no displayable images"));
    fits_close (ifp);
    return (nullptr);
  }
@@ -304,14 +304,14 @@ float * FITSViewer::loadData(const char *filename, float *buffer)
   tempData         = (unsigned char  *) malloc (height * width * bpp * sizeof(unsigned char));
   if (!buffer || !tempData)
   {
-    KMessageBox::error(0, i18n("Not enough memory to load FITS."));
+    KMessageBox::error(nullptr, i18n("Not enough memory to load FITS."));
     return (nullptr);
   }
   tempDataPtr      = tempData;
   
   if (fread(tempData, 1, width * height * bpp, ifp->fp) != (unsigned int) (width * height * bpp))
   {
-    KMessageBox::error(0, i18n("Unable to read FITS data from file. %1.\n").arg(strerror(errno)));
+    KMessageBox::error(nullptr, i18n("Unable to read FITS data from file. %1.\n").arg(strerror(errno)));
     return (nullptr);
   }
   
@@ -502,7 +502,7 @@ void FITSViewer::fileOpen()
     
   TQString caption = i18n( "Save Changes to FITS?" );
 		TQString message = i18n( "The current FITS file has unsaved changes.  Would you like to save before closing it?" );
-		int ans = KMessageBox::warningYesNoCancel( 0, message, caption, KStdGuiItem::save(), KStdGuiItem::discard() );
+		int ans = KMessageBox::warningYesNoCancel( nullptr, message, caption, KStdGuiItem::save(), KStdGuiItem::discard() );
 		if ( ans == KMessageBox::Yes )
 			fileSave();	
 		else if ( ans == KMessageBox::No ) 
@@ -572,14 +572,14 @@ void FITSViewer::fileSave()
         transData = (unsigned char *) malloc (sizeof(unsigned char) * totalCount * image->bpp);
 	if (!transData)
 	{
-  		KMessageBox::error(0, i18n("Error: Low memory. Saving is aborted."));
+  		KMessageBox::error(nullptr, i18n("Error: Low memory. Saving is aborted."));
 		return;
   	}
   
   	ifp = fits_open (currentURL.path().ascii(), "w");
         if (!ifp)
         {
-          KMessageBox::error(0, i18n("Error during open of FITS file."));
+          KMessageBox::error(nullptr, i18n("Error during open of FITS file."));
           return;
         }
     	
@@ -697,7 +697,7 @@ void FITSViewer::fileSave()
   else
   {
 		TQString message = i18n( "Invalid URL: %1" ).arg( currentURL.url() );
-		KMessageBox::sorry( 0, message, i18n( "Invalid URL" ) );
+		KMessageBox::sorry( nullptr, message, i18n( "Invalid URL" ) );
   }
 	
 
diff --git a/kstars/kstars/fitsviewer.h b/kstars/kstars/fitsviewer.h
index 5e2abd2f..e2f0e772 100644
--- a/kstars/kstars/fitsviewer.h
+++ b/kstars/kstars/fitsviewer.h
@@ -60,7 +60,7 @@ class FITSViewer : public TDEMainWindow  {
 	friend class FITSProcessCommand;
 	
 	/**Constructor. */
-	FITSViewer (const KURL *imageName, TQWidget *parent, const char *name = 0);
+	FITSViewer (const KURL *imageName, TQWidget *parent, const char *name = nullptr);
 	~FITSViewer();
 
 	
diff --git a/kstars/kstars/focusdialog.cpp b/kstars/kstars/focusdialog.cpp
index 3dcfbf3a..be7ce9c6 100644
--- a/kstars/kstars/focusdialog.cpp
+++ b/kstars/kstars/focusdialog.cpp
@@ -35,7 +35,7 @@
 FocusDialog::FocusDialog( TQWidget *parent )
 	: KDialogBase( KDialogBase::Plain, i18n( "Set Focus Manually" ), Ok|Cancel, Ok, parent ) {
 
-	Point = 0; //initialize pointer to null
+	Point = nullptr; //initialize pointer to null
 	UsedAltAz = false; //assume RA/Dec by default
 
 	TQFrame *page = plainPage();
@@ -90,7 +90,7 @@ void FocusDialog::validatePoint() {
 		if ( dec.Degrees() < -90.0 || dec.Degrees() > 90.0 )
 			message += "\n" + i18n( "The Declination value must be between -90.0 and 90.0." );
 		if ( ! message.isEmpty() ) {
-			KMessageBox::sorry( 0, message, i18n( "Invalid Coordinate Data" ) );
+			KMessageBox::sorry( nullptr, message, i18n( "Invalid Coordinate Data" ) );
 			return;
 		}
 
@@ -111,7 +111,7 @@ void FocusDialog::validatePoint() {
 			if ( alt.Degrees() < -90.0 || alt.Degrees() > 90.0 )
 				message += "\n" + i18n( "The Altitude value must be between -90.0 and 90.0." );
 			if ( ! message.isEmpty() ) {
-				KMessageBox::sorry( 0, message, i18n( "Invalid Coordinate Data" ) );
+				KMessageBox::sorry( nullptr, message, i18n( "Invalid Coordinate Data" ) );
 				return;
 			}
 
diff --git a/kstars/kstars/focusdialog.h b/kstars/kstars/focusdialog.h
index e02ecb0a..2b083874 100644
--- a/kstars/kstars/focusdialog.h
+++ b/kstars/kstars/focusdialog.h
@@ -38,7 +38,7 @@ class FocusDialog : public KDialogBase {
   
 public:
 	/**Constructor. */
-	FocusDialog( TQWidget *parent=0 );
+	FocusDialog( TQWidget *parent=nullptr );
 
 	/**Destructor (empty). */
 	~FocusDialog();
diff --git a/kstars/kstars/fovdialog.cpp b/kstars/kstars/fovdialog.cpp
index 07f249e6..d4ee1a91 100644
--- a/kstars/kstars/fovdialog.cpp
+++ b/kstars/kstars/fovdialog.cpp
@@ -72,7 +72,7 @@ void FOVDialog::initList() {
 	f.setName( locate( "appdata", "fov.dat" ) );
 
 	if ( f.exists() && f.open( IO_ReadOnly ) ) {
-		TQListBoxItem *item = 0;
+		TQListBoxItem *item = nullptr;
 
 		TQTextStream stream( &f );
 		while ( !stream.eof() ) {
@@ -109,7 +109,7 @@ void FOVDialog::initList() {
 }
 
 void FOVDialog::slotSelect(TQListBoxItem *item) {
-	if ( item == 0 ) { //no item selected
+	if ( !item ) { //no item selected
 		fov->RemoveButton->setEnabled( false );
 		fov->EditButton->setEnabled( false );
 	} else {
@@ -185,7 +185,7 @@ void FOVDialog::slotRemoveFOV() {
 	
 	if ( FOVList.isEmpty() ) {
 		TQString message( i18n( "You have removed all FOV symbols.  If the list remains empty when you exit this tool, the default symbols will be regenerated." ) );
-		KMessageBox::information( 0, message, i18n( "FOV list is empty" ), "dontShowFOVMessage" );
+		KMessageBox::information( nullptr, message, i18n( "FOV list is empty" ), "dontShowFOVMessage" );
 	}
 
 	update();
diff --git a/kstars/kstars/fovdialog.h b/kstars/kstars/fovdialog.h
index 62ad30c3..21faf8ed 100644
--- a/kstars/kstars/fovdialog.h
+++ b/kstars/kstars/fovdialog.h
@@ -36,7 +36,7 @@ class FOVDialog : public KDialogBase
 	TQ_OBJECT
   
 public:
-	FOVDialog( TQWidget *parent=0 );
+	FOVDialog( TQWidget *parent=nullptr );
 	~FOVDialog();
 	unsigned int currentItem() const;
 	TQPtrList<FOV> FOVList;
@@ -66,7 +66,7 @@ class NewFOV : public KDialogBase
 	TQ_OBJECT
   
 public:
-	NewFOV( TQWidget *parent=0 );
+	NewFOV( TQWidget *parent=nullptr );
 	~NewFOV() {}
 	NewFOVUI *ui;
 
diff --git a/kstars/kstars/imagereductiondlg.cpp b/kstars/kstars/imagereductiondlg.cpp
index 122bba6b..cd1c3122 100644
--- a/kstars/kstars/imagereductiondlg.cpp
+++ b/kstars/kstars/imagereductiondlg.cpp
@@ -52,7 +52,7 @@ ImageReductionDlg::~ImageReductionDlg()
 
 void ImageReductionDlg::addDarkFile()
 {
-   KURL::List fileURLs = KFileDialog::getOpenURLs( TQString(), "*.fits *.fit *.fts|Flexible Image Transport System", 0, i18n("Dark Frames"));
+   KURL::List fileURLs = KFileDialog::getOpenURLs( TQString(), "*.fits *.fit *.fts|Flexible Image Transport System", nullptr, i18n("Dark Frames"));
   
   const int limit = (int) fileURLs.size();
   for (int i=0; i < limit ; ++i)
@@ -65,7 +65,7 @@ void ImageReductionDlg::addDarkFile()
 
 void ImageReductionDlg::addFlatFile()
 {
-   KURL::List fileURLs = KFileDialog::getOpenURLs( TQString(), "*.fits *.fit *.fts|Flexible Image Transport System", 0, i18n("Flat Frames"));
+   KURL::List fileURLs = KFileDialog::getOpenURLs( TQString(), "*.fits *.fit *.fts|Flexible Image Transport System", nullptr, i18n("Flat Frames"));
   
   const int limit = (int) fileURLs.size();
   
@@ -79,7 +79,7 @@ void ImageReductionDlg::addFlatFile()
 
 void ImageReductionDlg::addDarkFlatFile()
 {
-     KURL::List fileURLs = KFileDialog::getOpenURLs( TQString(), "*.fits *.fit *.fts|Flexible Image Transport System", 0, i18n("Dark Flat Frames"));
+     KURL::List fileURLs = KFileDialog::getOpenURLs( TQString(), "*.fits *.fit *.fts|Flexible Image Transport System", nullptr, i18n("Dark Flat Frames"));
   
      const int limit = (int) fileURLs.size();
      for (int i=0; i < limit; ++i) 
diff --git a/kstars/kstars/imagereductiondlg.h b/kstars/kstars/imagereductiondlg.h
index 1a5594bc..33077998 100644
--- a/kstars/kstars/imagereductiondlg.h
+++ b/kstars/kstars/imagereductiondlg.h
@@ -26,7 +26,7 @@
   
 
     public:
-     ImageReductionDlg(TQWidget * parent, const char * name = 0);
+     ImageReductionDlg(TQWidget * parent, const char * name = nullptr);
      ~ImageReductionDlg();
 
 
diff --git a/kstars/kstars/imagesequence.h b/kstars/kstars/imagesequence.h
index dc4e1231..ace32cda 100644
--- a/kstars/kstars/imagesequence.h
+++ b/kstars/kstars/imagesequence.h
@@ -24,7 +24,7 @@ class imagesequence : public imgSequenceDlg
   
 
 public:
-  imagesequence(TQWidget* parent = 0, const char* name = 0, bool modal = false, WFlags fl = 0 );
+  imagesequence(TQWidget* parent = nullptr, const char* name = nullptr, bool modal = false, WFlags fl = 0 );
   ~imagesequence();
   
 
diff --git a/kstars/kstars/imageviewer.cpp b/kstars/kstars/imageviewer.cpp
index 480104d9..8ff02138 100644
--- a/kstars/kstars/imageviewer.cpp
+++ b/kstars/kstars/imageviewer.cpp
@@ -31,7 +31,7 @@
 
 ImageViewer::ImageViewer (const KURL *url, const TQString &capText, TQWidget *parent, const char *name)
 	: TDEMainWindow (parent, name), imageURL (*url), fileIsImage (false),
-	  ctrl (false), key_s (false), key_q (false), downloadJob(0)
+	  ctrl (false), key_s (false), key_q (false), downloadJob(nullptr)
 {
 // toolbar can dock only on top-position and can't be minimized
 // JH: easier to just disable its mobility
@@ -138,12 +138,12 @@ void ImageViewer::loadImageFromURL()
 void ImageViewer::downloadReady (TDEIO::Job *job)
 {
 // set downloadJob to 0, but don't delete it - the job will automatically deleted !!!
-	downloadJob = 0;
+	downloadJob = nullptr;
 
 	if ( job->error() )
 	{
 		job->showErrorDialog();
-		closeEvent (0);
+		closeEvent (nullptr);
 		return;		// exit this function
 	}
 
@@ -154,7 +154,7 @@ void ImageViewer::downloadReady (TDEIO::Job *job)
 		showImage();
 		return;
 	}
-	closeEvent (0);
+	closeEvent (nullptr);
 }
 
 void ImageViewer::showImage()
@@ -163,7 +163,7 @@ void ImageViewer::showImage()
 	{
 		TQString text = i18n ("Loading of the image %1 failed.");
 		KMessageBox::error (this, text.arg (imageURL.prettyURL() ));
-		closeEvent (0);
+		closeEvent (nullptr);
 		return;
 	}
 	fileIsImage = true;	// we loaded the file and know now, that it is an image
@@ -223,7 +223,7 @@ void ImageViewer::saveFileToDisc()
 
 void ImageViewer::saveFile (KURL &url) {
 // synchronous Access to prevent segfaults
-	if (!TDEIO::NetAccess::copy (KURL (file->name()), url, (TQWidget*) 0))
+	if (!TDEIO::NetAccess::copy (KURL (file->name()), url, (TQWidget*) nullptr))
 	{
 		TQString text = i18n ("Saving of the image %1 failed.");
 		KMessageBox::error (this, text.arg (url.prettyURL() ));
@@ -231,7 +231,7 @@ void ImageViewer::saveFile (KURL &url) {
 }
 
 void ImageViewer::close() {
-	closeEvent (0);
+	closeEvent (nullptr);
 }
 
 void ImageViewer::checkJob() {
diff --git a/kstars/kstars/imageviewer.h b/kstars/kstars/imageviewer.h
index e7071f1f..202fd21f 100644
--- a/kstars/kstars/imageviewer.h
+++ b/kstars/kstars/imageviewer.h
@@ -51,7 +51,7 @@ class ImageViewer : public TDEMainWindow  {
 
 	public:
 	/**Constructor. */
-		ImageViewer (const KURL *imageName, const TQString &capText, TQWidget *parent, const char *name = 0);
+		ImageViewer (const KURL *imageName, const TQString &capText, TQWidget *parent, const char *name = nullptr);
 
 	/**Destructor. If there is a partially downloaded image file, delete it.*/
 		~ImageViewer();
diff --git a/kstars/kstars/indi/apogee_ppi.cpp b/kstars/kstars/indi/apogee_ppi.cpp
index e4f0170d..b2f76ec2 100644
--- a/kstars/kstars/indi/apogee_ppi.cpp
+++ b/kstars/kstars/indi/apogee_ppi.cpp
@@ -150,13 +150,13 @@ void ApogeeCam::initProperties()
   strcpy(imageB.name, "CCD1");
   strcpy(imageB.label, "Feed");
   strcpy(imageB.format, "");
-  imageB.blob    = 0;
+  imageB.blob    = nullptr;
   imageB.bloblen = 0;
   imageB.size    = 0;
-  imageB.bvp     = 0;
-  imageB.aux0    = 0;
-  imageB.aux1    = 0;
-  imageB.aux2    = 0;
+  imageB.bvp     = nullptr;
+  imageB.aux0    = nullptr;
+  imageB.aux1    = nullptr;
+  imageB.aux2    = nullptr;
   
   strcpy(imageBP.device, mydev);
   strcpy(imageBP.name, "Video");
@@ -168,7 +168,7 @@ void ApogeeCam::initProperties()
   imageBP.s       = IPS_IDLE;
   imageBP.bp	  = &imageB;
   imageBP.nbp     = 1;
-  imageBP.aux     = 0;
+  imageBP.aux     = nullptr;
   
   //loadXMLModel();
 }
diff --git a/kstars/kstars/indi/celestrongps.cpp b/kstars/kstars/indi/celestrongps.cpp
index e64f145b..62d6c42d 100644
--- a/kstars/kstars/indi/celestrongps.cpp
+++ b/kstars/kstars/indi/celestrongps.cpp
@@ -51,34 +51,34 @@ extern char* me;
 static void ISPoll(void *);
 
 /*INDI controls */
-static ISwitch PowerS[]          = {{"CONNECT" , "Connect" , ISS_OFF, 0, 0},{"DISCONNECT", "Disconnect", ISS_ON, 0, 0}};
-static ISwitch SlewModeS[]       = {{"Slew", "", ISS_ON, 0, 0}, {"Find", "", ISS_OFF, 0, 0}, {"Centering", "", ISS_OFF, 0, 0}, {"Guide", "", ISS_OFF, 0, 0}};
-static ISwitch OnCoordSetS[]     = {{"SLEW", "Slew", ISS_ON, 0 , 0}, {"TRACK", "Track", ISS_OFF, 0, 0}, {"SYNC", "Sync", ISS_OFF, 0, 0}};
-static ISwitch abortSlewS[]      = {{"ABORT", "Abort", ISS_OFF, 0, 0}};
+static ISwitch PowerS[]          = {{"CONNECT" , "Connect" , ISS_OFF, nullptr, nullptr},{"DISCONNECT", "Disconnect", ISS_ON, nullptr, nullptr}};
+static ISwitch SlewModeS[]       = {{"Slew", "", ISS_ON, nullptr, nullptr}, {"Find", "", ISS_OFF, nullptr, nullptr}, {"Centering", "", ISS_OFF, nullptr, nullptr}, {"Guide", "", ISS_OFF, nullptr, nullptr}};
+static ISwitch OnCoordSetS[]     = {{"SLEW", "Slew", ISS_ON, nullptr , nullptr}, {"TRACK", "Track", ISS_OFF, nullptr, nullptr}, {"SYNC", "Sync", ISS_OFF, nullptr, nullptr}};
+static ISwitch abortSlewS[]      = {{"ABORT", "Abort", ISS_OFF, nullptr, nullptr}};
 
-static ISwitch MovementS[]       = {{"N", "North", ISS_OFF, 0, 0}, {"W", "West", ISS_OFF, 0, 0}, {"E", "East", ISS_OFF, 0, 0}, {"S", "South", ISS_OFF, 0, 0}};
+static ISwitch MovementS[]       = {{"N", "North", ISS_OFF, nullptr, nullptr}, {"W", "West", ISS_OFF, nullptr, nullptr}, {"E", "East", ISS_OFF, nullptr, nullptr}, {"S", "South", ISS_OFF, nullptr, nullptr}};
 
 /* equatorial position */
 static INumber eq[] = {
-    {"RA",  "RA  H:M:S", "%10.6m",  0., 24., 0., 0., 0, 0, 0},
-    {"DEC", "Dec D:M:S", "%10.6m", -90., 90., 0., 0., 0, 0, 0},
+    {"RA",  "RA  H:M:S", "%10.6m",  0., 24., 0., 0., nullptr, nullptr, nullptr},
+    {"DEC", "Dec D:M:S", "%10.6m", -90., 90., 0., 0., nullptr, nullptr, nullptr},
 };
 //TODO decide appropiate TIME_OUT
 static INumberVectorProperty eqNum = {
     mydev, "EQUATORIAL_EOD_COORD", "Equatorial JNow", BASIC_GROUP, IP_RW, 0, IPS_IDLE,
-    eq, NARRAY(eq), "", 0};
+    eq, NARRAY(eq), "", nullptr};
 
 /* Fundamental group */
-static ISwitchVectorProperty PowerSw	= { mydev, "CONNECTION" , "Connection", COMM_GROUP, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, PowerS, NARRAY(PowerS), "", 0};
-static IText PortT[]			= {{"PORT", "Port", 0, 0, 0, 0}};
-static ITextVectorProperty Port		= { mydev, "DEVICE_PORT", "Ports", COMM_GROUP, IP_RW, 0, IPS_IDLE, PortT, NARRAY(PortT), "", 0};
+static ISwitchVectorProperty PowerSw	= { mydev, "CONNECTION" , "Connection", COMM_GROUP, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, PowerS, NARRAY(PowerS), "", nullptr};
+static IText PortT[]			= {{"PORT", "Port", nullptr, nullptr, nullptr, nullptr}};
+static ITextVectorProperty Port		= { mydev, "DEVICE_PORT", "Ports", COMM_GROUP, IP_RW, 0, IPS_IDLE, PortT, NARRAY(PortT), "", nullptr};
 
 /* Movement group */
-static ISwitchVectorProperty OnCoordSetSw    = { mydev, "ON_COORD_SET", "On Set", BASIC_GROUP, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, OnCoordSetS, NARRAY(OnCoordSetS), "", 0};
-static ISwitchVectorProperty abortSlewSw     = { mydev, "ABORT_MOTION", "Abort Slew/Track", BASIC_GROUP, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, abortSlewS, NARRAY(abortSlewS), "", 0};
-static ISwitchVectorProperty SlewModeSw      = { mydev, "Slew rate", "", MOVE_GROUP, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, SlewModeS, NARRAY(SlewModeS), "", 0};
+static ISwitchVectorProperty OnCoordSetSw    = { mydev, "ON_COORD_SET", "On Set", BASIC_GROUP, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, OnCoordSetS, NARRAY(OnCoordSetS), "", nullptr};
+static ISwitchVectorProperty abortSlewSw     = { mydev, "ABORT_MOTION", "Abort Slew/Track", BASIC_GROUP, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, abortSlewS, NARRAY(abortSlewS), "", nullptr};
+static ISwitchVectorProperty SlewModeSw      = { mydev, "Slew rate", "", MOVE_GROUP, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, SlewModeS, NARRAY(SlewModeS), "", nullptr};
 
-static ISwitchVectorProperty MovementSw      = { mydev, "MOVEMENT", "Move toward", MOVE_GROUP, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, MovementS, NARRAY(MovementS), "", 0};
+static ISwitchVectorProperty MovementSw      = { mydev, "MOVEMENT", "Move toward", MOVE_GROUP, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, MovementS, NARRAY(MovementS), "", nullptr};
 
 
 /* send client definitions of all properties */
diff --git a/kstars/kstars/indi/lx200_16.cpp b/kstars/kstars/indi/lx200_16.cpp
index 05efcdc4..a0debcc3 100644
--- a/kstars/kstars/indi/lx200_16.cpp
+++ b/kstars/kstars/indi/lx200_16.cpp
@@ -54,9 +54,9 @@ extern int MaxReticleFlashRate;
 //    bool setObjAz(int degrees, int minutes);
 
 
-static ISwitch FanStatusS[]		= { {"On", "", ISS_OFF, 0, 0}, {"Off", "", ISS_OFF, 0, 0}};
-static ISwitch HomeSearchS[]		= { {"Save home", "", ISS_OFF, 0, 0} , {"Set home", "", ISS_OFF, 0, 0}};
-static ISwitch FieldDeRotatorS[]	= { {"On", "", ISS_OFF, 0, 0}, {"Off", "", ISS_OFF,0 ,0}};
+static ISwitch FanStatusS[]		= { {"On", "", ISS_OFF, nullptr, nullptr}, {"Off", "", ISS_OFF, nullptr, nullptr}};
+static ISwitch HomeSearchS[]		= { {"Save home", "", ISS_OFF, nullptr, nullptr} , {"Set home", "", ISS_OFF, nullptr, nullptr}};
+static ISwitch FieldDeRotatorS[]	= { {"On", "", ISS_OFF, nullptr, nullptr}, {"Off", "", ISS_OFF,nullptr ,nullptr}};
 //static ISwitch SlewAltAzS[]		= { {"Slew To Alt/Az",  ISS_ON}};
 
 #define	MAXINDINAME	32
@@ -65,22 +65,22 @@ static ISwitch FieldDeRotatorS[]	= { {"On", "", ISS_OFF, 0, 0}, {"Off", "", ISS_
 #define	MAXINDIGROUP	32
 #define	MAXINDIFORMAT	32
 
-static ISwitchVectorProperty FanStatusSw	= { mydev, "Fan", "", LX16GROUP, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, FanStatusS, NARRAY(FanStatusS), "", 0};
+static ISwitchVectorProperty FanStatusSw	= { mydev, "Fan", "", LX16GROUP, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, FanStatusS, NARRAY(FanStatusS), "", nullptr};
 
-static ISwitchVectorProperty HomeSearchSw	= { mydev, "Park", "", LX16GROUP, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, HomeSearchS, NARRAY(HomeSearchS), "", 0};
+static ISwitchVectorProperty HomeSearchSw	= { mydev, "Park", "", LX16GROUP, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, HomeSearchS, NARRAY(HomeSearchS), "", nullptr};
 
-static ISwitchVectorProperty FieldDeRotatorSw	= { mydev, "Field De-rotator", "", LX16GROUP, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, FieldDeRotatorS, NARRAY(FieldDeRotatorS), "", 0};
+static ISwitchVectorProperty FieldDeRotatorSw	= { mydev, "Field De-rotator", "", LX16GROUP, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, FieldDeRotatorS, NARRAY(FieldDeRotatorS), "", nullptr};
 
 //static ISwitches SlewAltAzSw		= { mydev, "AltAzSet", "On Alt/Az Set",  SlewAltAzS, NARRAY(SlewAltAzS), ILS_IDLE, 0, LX16Group};
 
 /* horizontal position */
 static INumber hor[] = {
-    {"ALT",  "Alt  D:M:S", "%10.6m",  -90., 90., 0., 0., 0, 0, 0},
-    {"AZ", "Az D:M:S", "%10.6m", 0., 360., 0., 0., 0, 0, 0}};
+    {"ALT",  "Alt  D:M:S", "%10.6m",  -90., 90., 0., 0., nullptr, nullptr, nullptr},
+    {"AZ", "Az D:M:S", "%10.6m", 0., 360., 0., 0., nullptr, nullptr, nullptr}};
     
 static INumberVectorProperty horNum = {
     mydev, "HORIZONTAL_COORD", "Horizontal Coords", LX16GROUP, IP_RW, 0, IPS_IDLE,
-    hor, NARRAY(hor), "", 0};
+    hor, NARRAY(hor), "", nullptr};
 
 void changeLX200_16DeviceName(const char * newName)
 {
diff --git a/kstars/kstars/indi/lx200autostar.cpp b/kstars/kstars/indi/lx200autostar.cpp
index 6355a557..a2dbbf7a 100644
--- a/kstars/kstars/indi/lx200autostar.cpp
+++ b/kstars/kstars/indi/lx200autostar.cpp
@@ -37,13 +37,13 @@ extern INumberVectorProperty eqNum;
 extern ISwitchVectorProperty ParkSP;
 extern ISwitchVectorProperty PowerSP;
 
-static IText   VersionT[] ={{ "Date", "", 0, 0, 0, 0} ,
-			   { "Time", "", 0, 0, 0, 0} ,
-			   { "Number", "", 0, 0, 0 ,0} ,
-			   { "Full", "", 0, 0, 0, 0} ,
-			   { "Name", "" ,0 ,0 ,0 ,0}};
+static IText   VersionT[] ={{ "Date", "", nullptr, nullptr, nullptr, nullptr} ,
+			   { "Time", "", nullptr, nullptr, nullptr, nullptr} ,
+			   { "Number", "", nullptr, nullptr, nullptr ,nullptr} ,
+			   { "Full", "", nullptr, nullptr, nullptr, nullptr} ,
+			   { "Name", "" ,nullptr ,nullptr ,nullptr ,nullptr}};
 
-static ITextVectorProperty VersionInfo = {mydev, "Firmware Info", "", FirmwareGroup, IP_RO, 0, IPS_IDLE, VersionT, NARRAY(VersionT), "" ,0};
+static ITextVectorProperty VersionInfo = {mydev, "Firmware Info", "", FirmwareGroup, IP_RO, 0, IPS_IDLE, VersionT, NARRAY(VersionT), "" ,nullptr};
 
 void changeLX200AutostarDeviceName(const char *newName)
 {
diff --git a/kstars/kstars/indi/lx200classic.cpp b/kstars/kstars/indi/lx200classic.cpp
index c66b66b4..d76aeb8a 100644
--- a/kstars/kstars/indi/lx200classic.cpp
+++ b/kstars/kstars/indi/lx200classic.cpp
@@ -34,28 +34,28 @@ extern int MaxReticleFlashRate;
 #define LIBRARY_GROUP	"Library"
 #define MOVE_GROUP	"Movement Control"
 
-static IText   ObjectText[] = {{"objectText", "Info", 0, 0, 0, 0}};
-static ITextVectorProperty ObjectInfo = {mydev, "Object Info", "", BASIC_GROUP, IP_RO, 0, IPS_IDLE, ObjectText, NARRAY(ObjectText), "", 0};
+static IText   ObjectText[] = {{"objectText", "Info", nullptr, nullptr, nullptr, nullptr}};
+static ITextVectorProperty ObjectInfo = {mydev, "Object Info", "", BASIC_GROUP, IP_RO, 0, IPS_IDLE, ObjectText, NARRAY(ObjectText), "", nullptr};
 
 /* Library group */
-static ISwitch StarCatalogS[]    = {{"STAR", "", ISS_ON, 0, 0}, {"SAO", "", ISS_OFF, 0, 0}, {"GCVS", "", ISS_OFF, 0, 0}};
-static ISwitch DeepSkyCatalogS[] = {{"NGC", "", ISS_ON, 0, 0}, {"IC", "", ISS_OFF, 0, 0}, {"UGC", "", ISS_OFF, 0, 0}, {"Caldwell", "", ISS_OFF, 0, 0}, {"Arp", "", ISS_OFF, 0, 0}, {"Abell", "", ISS_OFF, 0, 0}, {"Messier", "", ISS_OFF, 0, 0}};
-static ISwitch SolarS[]          = { {"Select", "Select item...", ISS_ON, 0, 0}, {"1", "Mercury", ISS_OFF,0 , 0}, {"2", "Venus", ISS_OFF, 0, 0}, {"3", "Moon", ISS_OFF, 0, 0}, {"4", "Mars", ISS_OFF, 0, 0}, {"5", "Jupiter", ISS_OFF, 0, 0}, {"6", "Saturn", ISS_OFF, 0, 0}, {"7", "Uranus", ISS_OFF, 0, 0}, {"8", "Neptune", ISS_OFF, 0, 0}, {"9", "Pluto", ISS_OFF, 0 ,0}};
+static ISwitch StarCatalogS[]    = {{"STAR", "", ISS_ON, nullptr, nullptr}, {"SAO", "", ISS_OFF, nullptr, nullptr}, {"GCVS", "", ISS_OFF, nullptr, nullptr}};
+static ISwitch DeepSkyCatalogS[] = {{"NGC", "", ISS_ON, nullptr, nullptr}, {"IC", "", ISS_OFF, nullptr, nullptr}, {"UGC", "", ISS_OFF, nullptr, nullptr}, {"Caldwell", "", ISS_OFF, nullptr, nullptr}, {"Arp", "", ISS_OFF, nullptr, nullptr}, {"Abell", "", ISS_OFF, nullptr, nullptr}, {"Messier", "", ISS_OFF, nullptr, nullptr}};
+static ISwitch SolarS[]          = { {"Select", "Select item...", ISS_ON, nullptr, nullptr}, {"1", "Mercury", ISS_OFF,nullptr , nullptr}, {"2", "Venus", ISS_OFF, nullptr, nullptr}, {"3", "Moon", ISS_OFF, nullptr, nullptr}, {"4", "Mars", ISS_OFF, nullptr, nullptr}, {"5", "Jupiter", ISS_OFF, nullptr, nullptr}, {"6", "Saturn", ISS_OFF, nullptr, nullptr}, {"7", "Uranus", ISS_OFF, nullptr, nullptr}, {"8", "Neptune", ISS_OFF, nullptr, nullptr}, {"9", "Pluto", ISS_OFF, nullptr ,nullptr}};
 
-static ISwitchVectorProperty StarCatalogSw   = { mydev, "Star Catalogs", "", LIBRARY_GROUP, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, StarCatalogS, NARRAY(StarCatalogS), "", 0};
-static ISwitchVectorProperty DeepSkyCatalogSw= { mydev, "Deep Sky Catalogs", "", LIBRARY_GROUP, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, DeepSkyCatalogS, NARRAY(DeepSkyCatalogS), "", 0};
-static ISwitchVectorProperty SolarSw         = { mydev, "SOLAR_SYSTEM", "Solar System", LIBRARY_GROUP, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, SolarS, NARRAY(SolarS), "", 0};
+static ISwitchVectorProperty StarCatalogSw   = { mydev, "Star Catalogs", "", LIBRARY_GROUP, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, StarCatalogS, NARRAY(StarCatalogS), "", nullptr};
+static ISwitchVectorProperty DeepSkyCatalogSw= { mydev, "Deep Sky Catalogs", "", LIBRARY_GROUP, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, DeepSkyCatalogS, NARRAY(DeepSkyCatalogS), "", nullptr};
+static ISwitchVectorProperty SolarSw         = { mydev, "SOLAR_SYSTEM", "Solar System", LIBRARY_GROUP, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, SolarS, NARRAY(SolarS), "", nullptr};
 
-static INumber ObjectN[] = { "ObjectN", "Number", "%g", 1., 10000., 1., 0., 0, 0, 0};
-static INumberVectorProperty ObjectNo= { mydev, "Object Number", "", LIBRARY_GROUP, IP_RW, 0, IPS_IDLE, ObjectN, NARRAY(ObjectN), "", 0 };
+static INumber ObjectN[] = { "ObjectN", "Number", "%g", 1., 10000., 1., 0., nullptr, nullptr, nullptr};
+static INumberVectorProperty ObjectNo= { mydev, "Object Number", "", LIBRARY_GROUP, IP_RW, 0, IPS_IDLE, ObjectN, NARRAY(ObjectN), "", nullptr };
 
-static INumber MaxSlew[] = {{"maxSlew", "Rate", "%g", 2.0, 9.0, 1.0, 9., 0, 0 ,0}};
-static INumberVectorProperty MaxSlewRate = { mydev, "Max slew Rate", "", MOVE_GROUP, IP_RW, 0, IPS_IDLE, MaxSlew, NARRAY(MaxSlew), "", 0};
+static INumber MaxSlew[] = {{"maxSlew", "Rate", "%g", 2.0, 9.0, 1.0, 9., nullptr, nullptr ,nullptr}};
+static INumberVectorProperty MaxSlewRate = { mydev, "Max slew Rate", "", MOVE_GROUP, IP_RW, 0, IPS_IDLE, MaxSlew, NARRAY(MaxSlew), "", nullptr};
 
 static INumber altLimit[] = {
-       {"minAlt", "min Alt", "%+03f", -90., 90., 0., 0., 0, 0, 0},
-       {"maxAlt", "max Alt", "%+03f", -90., 90., 0., 0., 0, 0, 0}};
-static INumberVectorProperty elevationLimit = { mydev, "altLimit", "Slew elevation Limit", BASIC_GROUP, IP_RW, 0, IPS_IDLE, altLimit, NARRAY(altLimit), "", 0};
+       {"minAlt", "min Alt", "%+03f", -90., 90., 0., 0., nullptr, nullptr, nullptr},
+       {"maxAlt", "max Alt", "%+03f", -90., 90., 0., 0., nullptr, nullptr, nullptr}};
+static INumberVectorProperty elevationLimit = { mydev, "altLimit", "Slew elevation Limit", BASIC_GROUP, IP_RW, 0, IPS_IDLE, altLimit, NARRAY(altLimit), "", nullptr};
 
 void changeLX200ClassicDeviceName(const char *newName)
 {
diff --git a/kstars/kstars/indi/lx200generic.cpp b/kstars/kstars/indi/lx200generic.cpp
index a71f9cd9..f3e70232 100644
--- a/kstars/kstars/indi/lx200generic.cpp
+++ b/kstars/kstars/indi/lx200generic.cpp
@@ -93,83 +93,83 @@ static void ISPoll(void *);
 static void retryConnection(void *);
 
 /*INDI controls */
-static ISwitch PowerS[]          = {{"CONNECT" , "Connect" , ISS_OFF, 0, 0},{"DISCONNECT", "Disconnect", ISS_ON, 0, 0}};
-static ISwitch AlignmentS []     = {{"Polar", "", ISS_ON, 0, 0}, {"AltAz", "", ISS_OFF, 0, 0}, {"Land", "", ISS_OFF, 0, 0}};
-static ISwitch SitesS[]          = {{"Site 1", "", ISS_ON, 0, 0}, {"Site 2", "", ISS_OFF, 0, 0},  {"Site 3", "", ISS_OFF, 0, 0},  {"Site 4", "", ISS_OFF, 0 ,0}};
-static ISwitch SlewModeS[]       = {{"Max", "", ISS_ON, 0, 0}, {"Find", "", ISS_OFF, 0, 0}, {"Centering", "", ISS_OFF, 0, 0}, {"Guide", "", ISS_OFF, 0 , 0}};
-static ISwitch OnCoordSetS[]     = {{"SLEW", "Slew", ISS_ON, 0, 0 }, {"TRACK", "Track", ISS_OFF, 0, 0}, {"SYNC", "Sync", ISS_OFF, 0 , 0}};
-static ISwitch TrackModeS[]      = {{ "Default", "", ISS_ON, 0, 0} , { "Lunar", "", ISS_OFF, 0, 0}, {"Manual", "", ISS_OFF, 0, 0}};
-static ISwitch abortSlewS[]      = {{"ABORT", "Abort", ISS_OFF, 0, 0 }};
-static ISwitch ParkS[]		 = { {"PARK", "Park", ISS_OFF, 0, 0} };
+static ISwitch PowerS[]          = {{"CONNECT" , "Connect" , ISS_OFF, nullptr, nullptr},{"DISCONNECT", "Disconnect", ISS_ON, nullptr, nullptr}};
+static ISwitch AlignmentS []     = {{"Polar", "", ISS_ON, nullptr, nullptr}, {"AltAz", "", ISS_OFF, nullptr, nullptr}, {"Land", "", ISS_OFF, nullptr, nullptr}};
+static ISwitch SitesS[]          = {{"Site 1", "", ISS_ON, nullptr, nullptr}, {"Site 2", "", ISS_OFF, nullptr, nullptr},  {"Site 3", "", ISS_OFF, nullptr, nullptr},  {"Site 4", "", ISS_OFF, nullptr ,nullptr}};
+static ISwitch SlewModeS[]       = {{"Max", "", ISS_ON, nullptr, nullptr}, {"Find", "", ISS_OFF, nullptr, nullptr}, {"Centering", "", ISS_OFF, nullptr, nullptr}, {"Guide", "", ISS_OFF, nullptr , nullptr}};
+static ISwitch OnCoordSetS[]     = {{"SLEW", "Slew", ISS_ON, nullptr, nullptr }, {"TRACK", "Track", ISS_OFF, nullptr, nullptr}, {"SYNC", "Sync", ISS_OFF, nullptr , nullptr}};
+static ISwitch TrackModeS[]      = {{ "Default", "", ISS_ON, nullptr, nullptr} , { "Lunar", "", ISS_OFF, nullptr, nullptr}, {"Manual", "", ISS_OFF, nullptr, nullptr}};
+static ISwitch abortSlewS[]      = {{"ABORT", "Abort", ISS_OFF, nullptr, nullptr }};
+static ISwitch ParkS[]		 = { {"PARK", "Park", ISS_OFF, nullptr, nullptr} };
 
-static ISwitch MovementS[]       = {{"N", "North", ISS_OFF, 0, 0}, {"W", "West", ISS_OFF, 0, 0}, {"E", "East", ISS_OFF, 0, 0}, {"S", "South", ISS_OFF, 0, 0}};
+static ISwitch MovementS[]       = {{"N", "North", ISS_OFF, nullptr, nullptr}, {"W", "West", ISS_OFF, nullptr, nullptr}, {"E", "East", ISS_OFF, nullptr, nullptr}, {"S", "South", ISS_OFF, nullptr, nullptr}};
 
 static INumber	FocusSpeedN[]	 = {{"SPEED", "Speed", "%0.f", 0., 3., 1., 0.}};
-static ISwitch  FocusMotionS[]	 = { {"IN", "Focus in", ISS_OFF, 0, 0}, {"OUT", "Focus out", ISS_OFF, 0, 0}};
-static INumber  FocusTimerN[]    = { {"TIMER", "Timer (s)", "%10.6m", 0., 120., 1., 0., 0, 0, 0 }};
+static ISwitch  FocusMotionS[]	 = { {"IN", "Focus in", ISS_OFF, nullptr, nullptr}, {"OUT", "Focus out", ISS_OFF, nullptr, nullptr}};
+static INumber  FocusTimerN[]    = { {"TIMER", "Timer (s)", "%10.6m", 0., 120., 1., 0., nullptr, nullptr, nullptr }};
 
-static INumberVectorProperty FocusTimerNP = { mydev, "FOCUS_TIMER", "Focus Timer", FOCUS_GROUP, IP_RW, 0, IPS_IDLE, FocusTimerN, NARRAY(FocusTimerN), "", 0};
+static INumberVectorProperty FocusTimerNP = { mydev, "FOCUS_TIMER", "Focus Timer", FOCUS_GROUP, IP_RW, 0, IPS_IDLE, FocusTimerN, NARRAY(FocusTimerN), "", nullptr};
 
 /* equatorial position */
 INumber eq[] = {
-    {"RA",  "RA  H:M:S", "%10.6m",  0., 24., 0., 0., 0, 0, 0},
-    {"DEC", "Dec D:M:S", "%10.6m", -90., 90., 0., 0., 0, 0, 0},
+    {"RA",  "RA  H:M:S", "%10.6m",  0., 24., 0., 0., nullptr, nullptr, nullptr},
+    {"DEC", "Dec D:M:S", "%10.6m", -90., 90., 0., 0., nullptr, nullptr, nullptr},
 };
 //TODO decide appropiate TIME_OUT
 // N.B. No Static identifier as it is needed for external linkage
 INumberVectorProperty eqNum = {
     mydev, "EQUATORIAL_EOD_COORD", "Equatorial JNow", BASIC_GROUP, IP_RW, 0, IPS_IDLE,
-    eq, NARRAY(eq), "", 0};
+    eq, NARRAY(eq), "", nullptr};
 
 /* Fundamental group */
-ISwitchVectorProperty PowerSP		= { mydev, "CONNECTION" , "Connection", COMM_GROUP, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, PowerS, NARRAY(PowerS), "", 0};
-static IText PortT[]			= {{"PORT", "Port", 0, 0, 0, 0}};
-static ITextVectorProperty Port		= { mydev, "DEVICE_PORT", "Ports", COMM_GROUP, IP_RW, 0, IPS_IDLE, PortT, NARRAY(PortT), "", 0};
+ISwitchVectorProperty PowerSP		= { mydev, "CONNECTION" , "Connection", COMM_GROUP, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, PowerS, NARRAY(PowerS), "", nullptr};
+static IText PortT[]			= {{"PORT", "Port", nullptr, nullptr, nullptr, nullptr}};
+static ITextVectorProperty Port		= { mydev, "DEVICE_PORT", "Ports", COMM_GROUP, IP_RW, 0, IPS_IDLE, PortT, NARRAY(PortT), "", nullptr};
 
 /* Basic data group */
-static ISwitchVectorProperty AlignmentSw	= { mydev, "Alignment", "", COMM_GROUP, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, AlignmentS, NARRAY(AlignmentS), "", 0};
+static ISwitchVectorProperty AlignmentSw	= { mydev, "Alignment", "", COMM_GROUP, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, AlignmentS, NARRAY(AlignmentS), "", nullptr};
 
 /* Movement group */
-static ISwitchVectorProperty OnCoordSetSw    = { mydev, "ON_COORD_SET", "On Set", BASIC_GROUP, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, OnCoordSetS, NARRAY(OnCoordSetS), "", 0};
+static ISwitchVectorProperty OnCoordSetSw    = { mydev, "ON_COORD_SET", "On Set", BASIC_GROUP, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, OnCoordSetS, NARRAY(OnCoordSetS), "", nullptr};
 
-static ISwitchVectorProperty abortSlewSw     = { mydev, "ABORT_MOTION", "Abort Slew/Track", BASIC_GROUP, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, abortSlewS, NARRAY(abortSlewS), "", 0};
+static ISwitchVectorProperty abortSlewSw     = { mydev, "ABORT_MOTION", "Abort Slew/Track", BASIC_GROUP, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, abortSlewS, NARRAY(abortSlewS), "", nullptr};
 
-ISwitchVectorProperty	ParkSP = {mydev, "PARK", "Park Scope", BASIC_GROUP, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, ParkS, NARRAY(ParkS), "", 0 };
+ISwitchVectorProperty	ParkSP = {mydev, "PARK", "Park Scope", BASIC_GROUP, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, ParkS, NARRAY(ParkS), "", nullptr };
 
-static ISwitchVectorProperty SlewModeSw      = { mydev, "Slew rate", "", MOVE_GROUP, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, SlewModeS, NARRAY(SlewModeS), "", 0};
+static ISwitchVectorProperty SlewModeSw      = { mydev, "Slew rate", "", MOVE_GROUP, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, SlewModeS, NARRAY(SlewModeS), "", nullptr};
 
-static ISwitchVectorProperty TrackModeSw  = { mydev, "Tracking Mode", "", MOVE_GROUP, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, TrackModeS, NARRAY(TrackModeS), "", 0};
+static ISwitchVectorProperty TrackModeSw  = { mydev, "Tracking Mode", "", MOVE_GROUP, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, TrackModeS, NARRAY(TrackModeS), "", nullptr};
 
-static INumber TrackFreq[]  = {{ "trackFreq", "Freq", "%g", 56.4, 60.1, 0.1, 60.1, 0, 0, 0}};
+static INumber TrackFreq[]  = {{ "trackFreq", "Freq", "%g", 56.4, 60.1, 0.1, 60.1, nullptr, nullptr, nullptr}};
 
-static INumberVectorProperty TrackingFreq= { mydev, "Tracking Frequency", "", MOVE_GROUP, IP_RW, 0, IPS_IDLE, TrackFreq, NARRAY(TrackFreq), "", 0};
+static INumberVectorProperty TrackingFreq= { mydev, "Tracking Frequency", "", MOVE_GROUP, IP_RW, 0, IPS_IDLE, TrackFreq, NARRAY(TrackFreq), "", nullptr};
 
-static ISwitchVectorProperty MovementSw      = { mydev, "MOVEMENT", "Move toward", MOVE_GROUP, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, MovementS, NARRAY(MovementS), "", 0};
+static ISwitchVectorProperty MovementSw      = { mydev, "MOVEMENT", "Move toward", MOVE_GROUP, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, MovementS, NARRAY(MovementS), "", nullptr};
 
 // Focus Control
-static INumberVectorProperty	FocusSpeedNP  = {mydev, "FOCUS_SPEED", "Speed", FOCUS_GROUP, IP_RW, 0, IPS_IDLE, FocusSpeedN, NARRAY(FocusSpeedN), "", 0};
+static INumberVectorProperty	FocusSpeedNP  = {mydev, "FOCUS_SPEED", "Speed", FOCUS_GROUP, IP_RW, 0, IPS_IDLE, FocusSpeedN, NARRAY(FocusSpeedN), "", nullptr};
 
-static ISwitchVectorProperty	FocusMotionSw = {mydev, "FOCUS_MOTION", "Motion", FOCUS_GROUP, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, FocusMotionS, NARRAY(FocusMotionS), "", 0};
+static ISwitchVectorProperty	FocusMotionSw = {mydev, "FOCUS_MOTION", "Motion", FOCUS_GROUP, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, FocusMotionS, NARRAY(FocusMotionS), "", nullptr};
 
 /* Data & Time */
-static IText UTC[] = {{"UTC", "UTC", 0, 0, 0, 0}};
-ITextVectorProperty Time = { mydev, "TIME", "UTC Time", DATETIME_GROUP, IP_RW, 0, IPS_IDLE, UTC, NARRAY(UTC), "", 0};
-static INumber STime[] = {{"LST", "Sidereal time", "%10.6m" , 0.,24.,0.,0., 0, 0, 0}};
-INumberVectorProperty SDTime = { mydev, "SDTIME", "Sidereal Time", DATETIME_GROUP, IP_RW, 0, IPS_IDLE, STime, NARRAY(STime), "", 0};
+static IText UTC[] = {{"UTC", "UTC", nullptr, nullptr, nullptr, nullptr}};
+ITextVectorProperty Time = { mydev, "TIME", "UTC Time", DATETIME_GROUP, IP_RW, 0, IPS_IDLE, UTC, NARRAY(UTC), "", nullptr};
+static INumber STime[] = {{"LST", "Sidereal time", "%10.6m" , 0.,24.,0.,0., nullptr, nullptr, nullptr}};
+INumberVectorProperty SDTime = { mydev, "SDTIME", "Sidereal Time", DATETIME_GROUP, IP_RW, 0, IPS_IDLE, STime, NARRAY(STime), "", nullptr};
 
 
 /* Site managment */
-static ISwitchVectorProperty SitesSw  = { mydev, "Sites", "", SITE_GROUP, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, SitesS, NARRAY(SitesS), "", 0};
+static ISwitchVectorProperty SitesSw  = { mydev, "Sites", "", SITE_GROUP, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, SitesS, NARRAY(SitesS), "", nullptr};
 /* geographic location */
 static INumber geo[] = {
-    {"LAT",  "Lat.  D:M:S +N", "%10.6m",  -90.,  90., 0., 0., 0, 0, 0},
-    {"LONG", "Long. D:M:S +E", "%10.6m", 0., 360., 0., 0., 0, 0, 0},
+    {"LAT",  "Lat.  D:M:S +N", "%10.6m",  -90.,  90., 0., 0., nullptr, nullptr, nullptr},
+    {"LONG", "Long. D:M:S +E", "%10.6m", 0., 360., 0., 0., nullptr, nullptr, nullptr},
 };
 static INumberVectorProperty geoNum = {
     mydev, "GEOGRAPHIC_COORD", "Geographic Location", SITE_GROUP, IP_RW, 0., IPS_IDLE,
-    geo, NARRAY(geo), "", 0};
-static IText   SiteNameT[] = {{"SiteName", "", 0, 0, 0, 0}};
-static ITextVectorProperty SiteName = { mydev, "Site Name", "", SITE_GROUP, IP_RW, 0 , IPS_IDLE, SiteNameT, NARRAY(SiteNameT), "", 0};
+    geo, NARRAY(geo), "", nullptr};
+static IText   SiteNameT[] = {{"SiteName", "", nullptr, nullptr, nullptr, nullptr}};
+static ITextVectorProperty SiteName = { mydev, "Site Name", "", SITE_GROUP, IP_RW, 0 , IPS_IDLE, SiteNameT, NARRAY(SiteNameT), "", nullptr};
 
 void changeLX200GenericDeviceName(const char * newName)
 {
diff --git a/kstars/kstars/indi/lx200gps.cpp b/kstars/kstars/indi/lx200gps.cpp
index 5ebe9748..f9f756e4 100644
--- a/kstars/kstars/indi/lx200gps.cpp
+++ b/kstars/kstars/indi/lx200gps.cpp
@@ -31,28 +31,28 @@
 extern LX200Generic *telescope;
 extern int MaxReticleFlashRate;
 
-static ISwitch GPSPowerS[]		= {{ "On", "", ISS_OFF, 0, 0}, {"Off", "", ISS_ON, 0, 0}};
-static ISwitch GPSStatusS[]	  	= {{ "Sleep", "", ISS_OFF, 0, 0}, {"Wake up", "", ISS_OFF, 0 ,0}, {"Restart", "", ISS_OFF, 0, 0}};
-static ISwitch GPSUpdateS[]	  	= { {"Update", "", ISS_OFF, 0, 0}};
-static ISwitch AltDecPecS[]		= {{ "Enable", "", ISS_OFF, 0 ,0}, {"Disable", "", ISS_OFF, 0 ,0}};
-static ISwitch AzRaPecS[]		= {{ "Enable", "", ISS_OFF, 0, 0}, {"Disable", "", ISS_OFF, 0 ,0}};
-static ISwitch SelenSyncS[]		= {{ "Sync", "",  ISS_OFF, 0, 0}};
-static ISwitch AltDecBackSlashS[]	= {{ "Activate", "", ISS_OFF, 0, 0}};
-static ISwitch AzRaBackSlashS[]		= {{ "Activate", "", ISS_OFF, 0, 0}};
-static ISwitch OTAUpdateS[]		= {{ "Update", "", ISS_OFF, 0, 0}};
-
-static ISwitchVectorProperty GPSPowerSw	   = { mydev, "GPS Power", "", GPSGroup, IP_RW, ISR_1OFMANY, 0 , IPS_IDLE, GPSPowerS, NARRAY(GPSPowerS), "", 0};
-static ISwitchVectorProperty GPSStatusSw   = { mydev, "GPS Status", "", GPSGroup, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, GPSStatusS, NARRAY(GPSStatusS), "", 0};
-static ISwitchVectorProperty GPSUpdateSw   = { mydev, "GPS System", "", GPSGroup, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, GPSUpdateS, NARRAY(GPSUpdateS), "", 0};
-static ISwitchVectorProperty AltDecPecSw   = { mydev, "Alt/Dec PEC", "", GPSGroup, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, AltDecPecS, NARRAY(AltDecPecS), "", 0};
-static ISwitchVectorProperty AzRaPecSw	   = { mydev, "Az/Ra PEC", "", GPSGroup, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, AzRaPecS, NARRAY(AzRaPecS), "", 0};
-static ISwitchVectorProperty SelenSyncSw   = { mydev, "Selenographic Sync", "", GPSGroup, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, SelenSyncS, NARRAY(SelenSyncS), "", 0};
-static ISwitchVectorProperty AltDecBackSlashSw	= { mydev, "Alt/Dec Anti-backslash", "", GPSGroup, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, AltDecBackSlashS, NARRAY(AltDecBackSlashS), "", 0};
-static ISwitchVectorProperty AzRaBackSlashSw	= { mydev, "Az/Ra Anti-backslash", "", GPSGroup, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, AzRaBackSlashS, NARRAY(AzRaBackSlashS), "", 0};
-static ISwitchVectorProperty OTAUpdateSw	= { mydev, "OTA Update", "", GPSGroup, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, OTAUpdateS, NARRAY(OTAUpdateS), "", 0};
-
-static INumber Temp[]	= { {"Temp.", "", "%g", -200., 500., 0., 0., 0, 0, 0 } };
-static INumberVectorProperty OTATemp =   { mydev, "OTA Temperature (C)", "", GPSGroup, IP_RO, 0, IPS_IDLE, Temp, NARRAY(Temp), "", 0};
+static ISwitch GPSPowerS[]		= {{ "On", "", ISS_OFF, nullptr, nullptr}, {"Off", "", ISS_ON, nullptr, nullptr}};
+static ISwitch GPSStatusS[]	  	= {{ "Sleep", "", ISS_OFF, nullptr, nullptr}, {"Wake up", "", ISS_OFF, nullptr ,nullptr}, {"Restart", "", ISS_OFF, nullptr, nullptr}};
+static ISwitch GPSUpdateS[]	  	= { {"Update", "", ISS_OFF, nullptr, nullptr}};
+static ISwitch AltDecPecS[]		= {{ "Enable", "", ISS_OFF, nullptr ,nullptr}, {"Disable", "", ISS_OFF, nullptr ,nullptr}};
+static ISwitch AzRaPecS[]		= {{ "Enable", "", ISS_OFF, nullptr, nullptr}, {"Disable", "", ISS_OFF, nullptr ,nullptr}};
+static ISwitch SelenSyncS[]		= {{ "Sync", "",  ISS_OFF, nullptr, nullptr}};
+static ISwitch AltDecBackSlashS[]	= {{ "Activate", "", ISS_OFF, nullptr, nullptr}};
+static ISwitch AzRaBackSlashS[]		= {{ "Activate", "", ISS_OFF, nullptr, nullptr}};
+static ISwitch OTAUpdateS[]		= {{ "Update", "", ISS_OFF, nullptr, nullptr}};
+
+static ISwitchVectorProperty GPSPowerSw	   = { mydev, "GPS Power", "", GPSGroup, IP_RW, ISR_1OFMANY, 0 , IPS_IDLE, GPSPowerS, NARRAY(GPSPowerS), "", nullptr};
+static ISwitchVectorProperty GPSStatusSw   = { mydev, "GPS Status", "", GPSGroup, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, GPSStatusS, NARRAY(GPSStatusS), "", nullptr};
+static ISwitchVectorProperty GPSUpdateSw   = { mydev, "GPS System", "", GPSGroup, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, GPSUpdateS, NARRAY(GPSUpdateS), "", nullptr};
+static ISwitchVectorProperty AltDecPecSw   = { mydev, "Alt/Dec PEC", "", GPSGroup, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, AltDecPecS, NARRAY(AltDecPecS), "", nullptr};
+static ISwitchVectorProperty AzRaPecSw	   = { mydev, "Az/Ra PEC", "", GPSGroup, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, AzRaPecS, NARRAY(AzRaPecS), "", nullptr};
+static ISwitchVectorProperty SelenSyncSw   = { mydev, "Selenographic Sync", "", GPSGroup, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, SelenSyncS, NARRAY(SelenSyncS), "", nullptr};
+static ISwitchVectorProperty AltDecBackSlashSw	= { mydev, "Alt/Dec Anti-backslash", "", GPSGroup, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, AltDecBackSlashS, NARRAY(AltDecBackSlashS), "", nullptr};
+static ISwitchVectorProperty AzRaBackSlashSw	= { mydev, "Az/Ra Anti-backslash", "", GPSGroup, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, AzRaBackSlashS, NARRAY(AzRaBackSlashS), "", nullptr};
+static ISwitchVectorProperty OTAUpdateSw	= { mydev, "OTA Update", "", GPSGroup, IP_RW, ISR_1OFMANY, 0, IPS_IDLE, OTAUpdateS, NARRAY(OTAUpdateS), "", nullptr};
+
+static INumber Temp[]	= { {"Temp.", "", "%g", -200., 500., 0., 0., nullptr, nullptr, nullptr } };
+static INumberVectorProperty OTATemp =   { mydev, "OTA Temperature (C)", "", GPSGroup, IP_RO, 0, IPS_IDLE, Temp, NARRAY(Temp), "", nullptr};
 
 void updateTemp(void * /*p*/);
 
diff --git a/kstars/kstars/indi/sbigccd.cpp b/kstars/kstars/indi/sbigccd.cpp
index bfc620a2..8fde1ce8 100644
--- a/kstars/kstars/indi/sbigccd.cpp
+++ b/kstars/kstars/indi/sbigccd.cpp
@@ -140,13 +140,13 @@ void SBIGCam::initProperties()
   strcpy(imageB.name, "CCD1");
   strcpy(imageB.label, "Feed");
   strcpy(imageB.format, "");
-  imageB.blob    = 0;
+  imageB.blob    = nullptr;
   imageB.bloblen = 0;
   imageB.size    = 0;
-  imageB.bvp     = 0;
-  imageB.aux0    = 0;
-  imageB.aux1    = 0;
-  imageB.aux2    = 0;
+  imageB.bvp     = nullptr;
+  imageB.aux0    = nullptr;
+  imageB.aux1    = nullptr;
+  imageB.aux2    = nullptr;
   
   strcpy(imageBP.device, mydev);
   strcpy(imageBP.name, "Video");
@@ -158,7 +158,7 @@ void SBIGCam::initProperties()
   imageBP.s       = IPS_IDLE;
   imageBP.bp	  = &imageB;
   imageBP.nbp     = 1;
-  imageBP.aux     = 0;
+  imageBP.aux     = nullptr;
   
 }
 
diff --git a/kstars/kstars/indidevice.cpp b/kstars/kstars/indidevice.cpp
index 1d893070..2e0f0450 100644
--- a/kstars/kstars/indidevice.cpp
+++ b/kstars/kstars/indidevice.cpp
@@ -871,7 +871,7 @@ int INDI_D::buildSwitchesGUI (XMLEle *root, char errmsg[])
 		if (err < 0)
 		{
 		    delete(pp);
-		    pp=0;
+		    pp=nullptr;
 		    return err;
 		}
 
@@ -886,7 +886,7 @@ int INDI_D::buildSwitchesGUI (XMLEle *root, char errmsg[])
 	    if (err < 0)
 	    {
 	      delete (pp);
-	      pp=0;
+	      pp=nullptr;
 	      return err;
 	    }
 
@@ -903,7 +903,7 @@ int INDI_D::buildSwitchesGUI (XMLEle *root, char errmsg[])
 	    if (err < 0)
 	    {
 	      delete (pp);
-	      pp=0;
+	      pp=nullptr;
 	      return err;
 	    }
 
diff --git a/kstars/kstars/indidriver.cpp b/kstars/kstars/indidriver.cpp
index 2f09574e..e8d6872b 100644
--- a/kstars/kstars/indidriver.cpp
+++ b/kstars/kstars/indidriver.cpp
@@ -398,7 +398,7 @@ bool INDIDriver::runDevice(IDevice *dev)
 
   if (dev->indiPort < 0)
   {
-   KMessageBox::error(0, i18n("Cannot start INDI server: port error."));
+   KMessageBox::error(nullptr, i18n("Cannot start INDI server: port error."));
    return false;
   }
 
@@ -450,7 +450,7 @@ void INDIDriver::saveDevicesToDisk()
  if ( !file.open( IO_WriteOnly))
  {
   TQString message = i18n( "unable to write to file 'drivers.xml'\nAny changes to INDI device drivers will not be saved." );
- KMessageBox::sorry( 0, message, i18n( "Could Not Open File" ) );
+ KMessageBox::sorry( nullptr, message, i18n( "Could Not Open File" ) );
   return;
  }
 
@@ -570,7 +570,7 @@ bool INDIDriver::readXMLDriver()
 
   if ( !KSUtils::openDataFile( file, indiFile ) )
   {
-     KMessageBox::error(0, i18n("Unable to find device driver file 'drivers.xml'. Please locate the file and place it in one of the following locations:\n\n \t$(TDEDIR)/share/apps/kstars/%1 \n\t~/.trinity/share/apps/kstars/%1"));
+     KMessageBox::error(nullptr, i18n("Unable to find device driver file 'drivers.xml'. Please locate the file and place it in one of the following locations:\n\n \t$(TDEDIR)/share/apps/kstars/%1 \n\t~/.trinity/share/apps/kstars/%1"));
 
     return false;
  }
@@ -772,7 +772,7 @@ void INDIDriver::addINDIHost()
 
     if (portOk == false)
     {
-     KMessageBox::error(0, i18n("Error: the port number is invalid."));
+     KMessageBox::error(nullptr, i18n("Error: the port number is invalid."));
      return;
     }
 
@@ -781,7 +781,7 @@ void INDIDriver::addINDIHost()
      if (hostItem->name   == ksw->data()->INDIHostsList.at(i)->name &&
          hostItem->portnumber == ksw->data()->INDIHostsList.at(i)->portnumber)
      {
-       KMessageBox::error(0, i18n("Host: %1 Port: %2 already exists.").arg(hostItem->name).arg(hostItem->portnumber));
+       KMessageBox::error(nullptr, i18n("Host: %1 Port: %2 already exists.").arg(hostItem->name).arg(hostItem->portnumber));
        return;
      }
 
@@ -849,11 +849,11 @@ void INDIDriver::removeINDIHost()
    {
         if (ksw->data()->INDIHostsList.at(i)->isConnected)
         {
-           KMessageBox::error( 0, i18n("You need to disconnect the client before removing it."));
+           KMessageBox::error( nullptr, i18n("You need to disconnect the client before removing it."));
            return;
         }
 
-        if (KMessageBox::warningContinueCancel( 0, i18n("Are you sure you want to remove the %1 client?").arg(clientListView->currentItem()->text(1)), i18n("Delete Confirmation"),KStdGuiItem::del())!=KMessageBox::Continue)
+        if (KMessageBox::warningContinueCancel( nullptr, i18n("Are you sure you want to remove the %1 client?").arg(clientListView->currentItem()->text(1)), i18n("Delete Confirmation"),KStdGuiItem::del())!=KMessageBox::Continue)
            return;
 	   
  	ksw->data()->INDIHostsList.remove(i);
@@ -878,7 +878,7 @@ void INDIDriver::saveHosts()
  if ( !file.open( IO_WriteOnly))
  {
   TQString message = i18n( "unable to write to file 'indihosts.xml'\nAny changes to INDI hosts configurations will not be saved." );
- KMessageBox::sorry( 0, message, i18n( "Could Not Open File" ) );
+ KMessageBox::sorry( nullptr, message, i18n( "Could Not Open File" ) );
   return;
  }
 
diff --git a/kstars/kstars/indidriver.h b/kstars/kstars/indidriver.h
index fe7eaf18..507320be 100644
--- a/kstars/kstars/indidriver.h
+++ b/kstars/kstars/indidriver.h
@@ -84,7 +84,7 @@ class INDIDriver : public devManager
 
    public:
 
-   INDIDriver(TQWidget * parent = 0);
+   INDIDriver(TQWidget * parent = nullptr);
    ~INDIDriver();
 
     TDEListView* deviceContainer;
diff --git a/kstars/kstars/indielement.cpp b/kstars/kstars/indielement.cpp
index eae70786..90cbf4be 100644
--- a/kstars/kstars/indielement.cpp
+++ b/kstars/kstars/indielement.cpp
@@ -73,7 +73,7 @@ INDI_E::INDI_E(INDI_P *parentProperty, TQString inName, TQString inLabel)
 
   pp = parentProperty;
 
-  EHBox     = new TQHBoxLayout(0, 0, KDialog::spacingHint());
+  EHBox     = new TQHBoxLayout(nullptr, 0, KDialog::spacingHint());
   label_w   = nullptr;
   read_w    = nullptr;
   write_w   = nullptr;
diff --git a/kstars/kstars/indifitsconf.h b/kstars/kstars/indifitsconf.h
index 09e6aa34..66e16350 100644
--- a/kstars/kstars/indifitsconf.h
+++ b/kstars/kstars/indifitsconf.h
@@ -18,7 +18,7 @@ class INDIFITSConf : public INDIConf
   
 
 public:
-  INDIFITSConf(TQWidget* parent = 0, const char* name = 0, bool modal = false, WFlags fl = 0 );
+  INDIFITSConf(TQWidget* parent = nullptr, const char* name = nullptr, bool modal = false, WFlags fl = 0 );
   ~INDIFITSConf();
   /*$PUBLIC_FUNCTIONS$*/
 
diff --git a/kstars/kstars/indimenu.cpp b/kstars/kstars/indimenu.cpp
index 1dec9542..c553ac56 100644
--- a/kstars/kstars/indimenu.cpp
+++ b/kstars/kstars/indimenu.cpp
@@ -93,13 +93,13 @@ void INDIMenu::updateStatus()
    {
     if (drivers->activeDriverCount() == 0)
     {
-       KMessageBox::error(0, i18n("No INDI devices currently running. To run devices, please select devices from the Device Manager in the devices menu."));
+       KMessageBox::error(nullptr, i18n("No INDI devices currently running. To run devices, please select devices from the Device Manager in the devices menu."));
        return;
     }
    }
    else if (mgr.count() == 0)
    {
-      KMessageBox::error(0, i18n("No INDI devices currently running. To run devices, please select devices from the Device Manager in the devices menu."));
+      KMessageBox::error(nullptr, i18n("No INDI devices currently running. To run devices, please select devices from the Device Manager in the devices menu."));
       return;
    }
 
diff --git a/kstars/kstars/indimenu.h b/kstars/kstars/indimenu.h
index 45c3d552..530f0eb5 100644
--- a/kstars/kstars/indimenu.h
+++ b/kstars/kstars/indimenu.h
@@ -50,7 +50,7 @@ class INDIMenu : public KDialogBase
   TQ_OBJECT
   
  public:
-   INDIMenu(TQWidget * parent = 0 , const char *name = 0);
+   INDIMenu(TQWidget * parent = nullptr , const char *name = nullptr);
    ~INDIMenu();
 
    /*****************************************************************
diff --git a/kstars/kstars/indiproperty.cpp b/kstars/kstars/indiproperty.cpp
index c0a1d14f..12dace6f 100644
--- a/kstars/kstars/indiproperty.cpp
+++ b/kstars/kstars/indiproperty.cpp
@@ -61,8 +61,8 @@ INDI_P::INDI_P(INDI_G *parentGroup, TQString inName)
 
   indistd 	  = new INDIStdProperty(this, pg->dp->parent->ksw, pg->dp->stdDev);
 
-  PHBox           = new TQHBoxLayout(0, 0, KDialogBase::spacingHint());
-  PVBox           = new TQVBoxLayout(0, 0, KDialogBase::spacingHint());
+  PHBox           = new TQHBoxLayout(nullptr, 0, KDialogBase::spacingHint());
+  PVBox           = new TQVBoxLayout(nullptr, 0, KDialogBase::spacingHint());
   light           = nullptr;
   label_w         = nullptr;
   set_w           = nullptr;
@@ -126,7 +126,7 @@ void INDI_P::drawLt(PState lstate)
 	  case PS_OK:
 	  light->setColor(TQt::green);
 	  emit okState();
-	  disconnect( this, TQ_SIGNAL(okState()), 0, 0 );
+	  disconnect( this, TQ_SIGNAL(okState()), nullptr, nullptr );
 	  break;
 
 	  case PS_BUSY:
@@ -178,7 +178,7 @@ void INDI_P::newText()
            f_scansexa(lp->text.ascii(), &(lp->targetValue));
 	   if ((lp->targetValue > lp->max || lp->targetValue < lp->min))
 	   {
-	     KMessageBox::error(0, i18n("Invalid range for element %1. Valid range is from %2 to %3").arg(lp->label).arg(lp->min).arg(lp->max));
+	     KMessageBox::error(nullptr, i18n("Invalid range for element %1. Valid range is from %2 to %3").arg(lp->label).arg(lp->min).arg(lp->max));
 	     return;
 	   }
         }
@@ -344,7 +344,7 @@ void INDI_P::newBlob()
 
       if (!fp.open(IO_ReadOnly))
       {
-          KMessageBox::error(0, i18n("Cannot open file %1 for reading").arg(filename));
+          KMessageBox::error(nullptr, i18n("Cannot open file %1 for reading").arg(filename));
           valid = false;
           continue;
      }
@@ -354,7 +354,7 @@ void INDI_P::newBlob()
      data_file = new char[fp.size()];
      if (!data_file)
      {
- 	KMessageBox::error(0, i18n("Not enough memory to load %1").arg(filename));
+ 	KMessageBox::error(nullptr, i18n("Not enough memory to load %1").arg(filename));
 	fp.close();
         valid = false;
         continue;
@@ -366,7 +366,7 @@ void INDI_P::newBlob()
      data64 = new unsigned char[4*fp.size()/3+4];
      if (!data64)
      {
-	KMessageBox::error(0, i18n("Not enough memory to convert file %1 to base64").arg(filename));
+	KMessageBox::error(nullptr, i18n("Not enough memory to convert file %1 to base64").arg(filename));
         fp.close();
         valid = false;
         continue;
@@ -698,7 +698,7 @@ int INDI_P::buildSwitchesGUI(XMLEle *root, char errmsg[])
 	TQString switchName, switchLabel;
 	int j;
 
-	groupB = new TQButtonGroup(0);
+	groupB = new TQButtonGroup(nullptr);
         groupB->setFrameShape(TQFrame::NoFrame);
 	if (guitype == PG_BUTTONS)
 	  groupB->setExclusive(true);
diff --git a/kstars/kstars/indistd.cpp b/kstars/kstars/indistd.cpp
index 31b08fd6..f5ddcdc7 100644
--- a/kstars/kstars/indistd.cpp
+++ b/kstars/kstars/indistd.cpp
@@ -80,7 +80,7 @@
    connect( devTimer, TQ_SIGNAL(timeout()), this, TQ_SLOT(timerDone()) );
    connect( seqLister, TQ_SIGNAL(newItems (const KFileItemList & )), this, TQ_SLOT(checkSeqBoundary(const KFileItemList &)));
 
-   downloadDialog = new KProgressDialog(nullptr, 0, i18n("INDI"), i18n("Downloading Data..."));
+   downloadDialog = new KProgressDialog(nullptr, nullptr, i18n("INDI"), i18n("Downloading Data..."));
    downloadDialog->cancel();
 
    parser		= newLilXML();
diff --git a/kstars/kstars/infoboxes.cpp b/kstars/kstars/infoboxes.cpp
index a7297cc1..f91dcea4 100644
--- a/kstars/kstars/infoboxes.cpp
+++ b/kstars/kstars/infoboxes.cpp
@@ -30,7 +30,7 @@ InfoBoxes::InfoBoxes( int w, int h, TQPoint tp, bool tshade,
 		TQPoint gp, bool gshade, TQPoint fp, bool fshade,
 		TQColor colorText, TQColor colorGrab, TQColor colorBG ) :
 		boxColor(colorText), grabColor(colorGrab), bgColor(colorBG),
-		GeoBox(0), FocusBox(0), TimeBox(0)
+		GeoBox(nullptr), FocusBox(nullptr), TimeBox(nullptr)
 {
 
 	int tx = tp.x();
diff --git a/kstars/kstars/ksmoon.cpp b/kstars/kstars/ksmoon.cpp
index c8e1e5c7..9783a44e 100644
--- a/kstars/kstars/ksmoon.cpp
+++ b/kstars/kstars/ksmoon.cpp
@@ -137,7 +137,7 @@ bool KSMoon::findGeocentricPosition( const KSNumbers *num, const KSPlanetBase* )
 
 	if (!loadData()) return false;
 
-	for (MoonLRData *mlrd = LRData.first(); mlrd != 0; mlrd = LRData.next()) {
+	for (MoonLRData *mlrd = LRData.first(); mlrd; mlrd = LRData.next()) {
 
 		E = 1.0;
 		if ( mlrd->nm ) { //if M != 0, include changing eccentricity of Earth's orbit
@@ -149,7 +149,7 @@ bool KSMoon::findGeocentricPosition( const KSNumbers *num, const KSPlanetBase* )
 	}
 
 	sumB = 0.0;
-	for (MoonBData *mbd = BData.first(); mbd != 0; mbd = BData.next()) {
+	for (MoonBData *mbd = BData.first(); mbd; mbd = BData.next()) {
 
 		E = 1.0;
 		if ( mbd->nm ) { //if M != 0, include changing eccentricity of Earth's orbit
diff --git a/kstars/kstars/ksnewstuff.cpp b/kstars/kstars/ksnewstuff.cpp
index effa90d6..a4067679 100644
--- a/kstars/kstars/ksnewstuff.cpp
+++ b/kstars/kstars/ksnewstuff.cpp
@@ -78,7 +78,7 @@ void KSNewStuff::updateData( const TQString &path ) {
 	//Handle the Steinicke NGC/IC catalog
 	if ( !NGCUpdated && qd[0].contains( "ngcic" ) ) {
 		//Build a progress dialog to show during data installation.
-		KProgressDialog prog( 0, "newstuffprogdialog", 
+		KProgressDialog prog( nullptr, "newstuffprogdialog", 
 				i18n( "Please Wait" ), i18n( "Installing Steinicke NGC/IC catalog..." ), false /*modal*/ );
 		prog.setAllowCancel( false );
 		prog.setMinimumDuration( 0 /*millisec*/ );
@@ -126,7 +126,7 @@ void KSNewStuff::updateData( const TQString &path ) {
 	//Handle the ephemerides
 	if ( qd[0] == "asteroids.dat" || qd[0] == "comets.dat" ) {
 		//Build a progress dialog to show during data installation.
-		KProgressDialog prog( 0, "newstuffprogdialog", 
+		KProgressDialog prog( nullptr, "newstuffprogdialog", 
 				i18n( "Please Wait" ), i18n( "Installing comet and asteroid ephemerides..." ), true /*modal*/ );
 		prog.setAllowCancel( false );
 		prog.setMinimumDuration( 50 /*millisec*/ );
diff --git a/kstars/kstars/ksnewstuff.h b/kstars/kstars/ksnewstuff.h
index 2d85af1b..3fba83a1 100644
--- a/kstars/kstars/ksnewstuff.h
+++ b/kstars/kstars/ksnewstuff.h
@@ -48,7 +48,7 @@ class KSNewStuff : public TQObject, public TDENewStuff
 		*Constructor
 		*@p parent pointer to the parent widget
 		*/
-		KSNewStuff( TQWidget *parent = 0 );
+		KSNewStuff( TQWidget *parent = nullptr );
 
 	/**
 		*Install new application data
diff --git a/kstars/kstars/ksplanet.cpp b/kstars/kstars/ksplanet.cpp
index 3c8945e7..154e757e 100644
--- a/kstars/kstars/ksplanet.cpp
+++ b/kstars/kstars/ksplanet.cpp
@@ -105,7 +105,7 @@ KSPlanet::OrbitDataColl *KSPlanet::OrbitDataManager::loadData(TQString n) {
 
 	if ( nCount==0 ){ //No longitude data found!
 		delete ret;
-		return 0;
+		return nullptr;
 	}
 
 	//Ecliptic Latitude
@@ -119,7 +119,7 @@ KSPlanet::OrbitDataColl *KSPlanet::OrbitDataManager::loadData(TQString n) {
 
 	if (nCount==0){ //no latitude data found!
 		delete ret;
-		return 0;
+		return nullptr;
 	}
 
 	//Heliocentric Distance
@@ -133,7 +133,7 @@ KSPlanet::OrbitDataColl *KSPlanet::OrbitDataManager::loadData(TQString n) {
 
 	if (nCount==0){ //no distance data found!
 		delete ret;
-		return 0;
+		return nullptr;
 	}
 
 	dict.insert(n, ret);
@@ -149,7 +149,7 @@ KSPlanet::KSPlanet( KStarsData *kd, TQString s, TQString imfile, double pSize )
 }
 
 bool KSPlanet::loadData() {
-	return (odm.loadData(name()) != 0);
+	return (odm.loadData(name()) != nullptr);
 }
 
 void KSPlanet::calcEcliptic(double Tau, EclipticPosition &epret) const {
diff --git a/kstars/kstars/ksplanetbase.cpp b/kstars/kstars/ksplanetbase.cpp
index 4b787318..46655116 100644
--- a/kstars/kstars/ksplanetbase.cpp
+++ b/kstars/kstars/ksplanetbase.cpp
@@ -30,7 +30,7 @@
 
 
 KSPlanetBase::KSPlanetBase( KStarsData *kd, TQString s, TQString image_file, double pSize )
- : SkyObject( 2, 0.0, 0.0, 0.0, s, "" ), Rearth(0.0), Image(0), data(kd) {
+ : SkyObject( 2, 0.0, 0.0, 0.0, s, "" ), Rearth(0.0), Image(nullptr), data(kd) {
 
 	 if (! image_file.isEmpty()) {
 		TQFile imFile;
diff --git a/kstars/kstars/ksplanetbase.h b/kstars/kstars/ksplanetbase.h
index ab797419..aca38e9e 100644
--- a/kstars/kstars/ksplanetbase.h
+++ b/kstars/kstars/ksplanetbase.h
@@ -201,7 +201,7 @@ public:
 	*@param lat pointer to the geographic latitude; if NULL< we skip localizeCoords()
 	*@param LST pointer to the local sidereal time; if NULL< we skip localizeCoords()
 	*/
-	virtual void updateCoords( KSNumbers *num, bool includePlanets=true, const dms *lat=0, const dms *LST=0 );
+	virtual void updateCoords( KSNumbers *num, bool includePlanets=true, const dms *lat=nullptr, const dms *LST=nullptr );
 
 /**
 	*@short Find position, including correction for Figure-of-the-Earth.
@@ -210,7 +210,7 @@ public:
 	*@param LST pointer to the local sidereal time; if NULL, we skip localizeCoords()
 	*@param Earth pointer to the Earth (not used for the Moon)
 	*/
-	void findPosition( const KSNumbers *num, const dms *lat=0, const dms *LST=0, const KSPlanetBase *Earth = 0 );
+	void findPosition( const KSNumbers *num, const dms *lat=nullptr, const dms *LST=nullptr, const KSPlanetBase *Earth = nullptr );
 
 /**@return the Planet's position angle.
 	*/
diff --git a/kstars/kstars/kspopupmenu.h b/kstars/kstars/kspopupmenu.h
index e2031e81..bb0165b6 100644
--- a/kstars/kstars/kspopupmenu.h
+++ b/kstars/kstars/kspopupmenu.h
@@ -42,7 +42,7 @@ TQ_OBJECT
   
 public:
 /**Default constructor*/
-	KSPopupMenu( TQWidget *parent = 0, const char *name = 0 );
+	KSPopupMenu( TQWidget *parent = nullptr, const char *name = nullptr );
 	
 /**Destructor (empty)*/
 	~KSPopupMenu();
@@ -134,7 +134,7 @@ public:
 	*@param nullObj pointer to dummy SkyObject, just to hold the clicked 
 	*coordinates for passing to initPopupMenu().
 	*/
-	void createEmptyMenu( SkyObject *nullObj=0 );
+	void createEmptyMenu( SkyObject *nullObj=nullptr );
 	
 /**Set the rise/transit/set time labels for the object.  Compute these times 
 	*for the object for the current date and location.  If the object is 
diff --git a/kstars/kstars/kssun.cpp b/kstars/kstars/kssun.cpp
index 5d20ef0e..44a11088 100644
--- a/kstars/kstars/kssun.cpp
+++ b/kstars/kstars/kssun.cpp
@@ -35,7 +35,7 @@ KSSun::KSSun( KStarsData *kd, TQString fn, double pSize ) : KSPlanet( kd, I18N_N
 
 bool KSSun::loadData() {
 //	kdDebug() << k_funcinfo << endl;
-	return (odm.loadData("earth") != 0);
+	return (odm.loadData("earth") != nullptr);
 }
 
 bool KSSun::findGeocentricPosition( const KSNumbers *num, const KSPlanetBase *Earth ) {
diff --git a/kstars/kstars/kstars.cpp b/kstars/kstars/kstars.cpp
index 34b656b9..d8a134d6 100644
--- a/kstars/kstars/kstars.cpp
+++ b/kstars/kstars/kstars.cpp
@@ -48,10 +48,10 @@
 
 KStars::KStars( bool doSplash, bool clockrun, const TQString &startdate ) :
 	DCOPObject("KStarsInterface"), TDEMainWindow(),
-	skymap(0), centralWidget(0), topLayout(0), viewToolBar(0), TimeStep(0),
-	actCoordSys(0), colorActionMenu(0), fovActionMenu(0),
-	AAVSODialog(0), findDialog(0), kns(0), 
-	indimenu(0), indidriver(0), indiseq(0),
+	skymap(nullptr), centralWidget(nullptr), topLayout(nullptr), viewToolBar(nullptr), TimeStep(nullptr),
+	actCoordSys(nullptr), colorActionMenu(nullptr), fovActionMenu(nullptr),
+	AAVSODialog(nullptr), findDialog(nullptr), kns(nullptr), 
+	indimenu(nullptr), indidriver(nullptr), indiseq(nullptr),
 	DialogIsObsolete(false), StartClockRunning( clockrun ), StartDateString( startdate )
 {
 	pd = new privatedata(this);
@@ -64,7 +64,7 @@ KStars::KStars( bool doSplash, bool clockrun, const TQString &startdate ) :
 		TQObject::connect(pd->kstarsData, TQ_SIGNAL( initFinished(bool) ),
 				this, TQ_SLOT( datainitFinished(bool) ) );
 
-		pd->splash = new KStarsSplash(0, "Splash");
+		pd->splash = new KStarsSplash(nullptr, "Splash");
 		TQObject::connect(pd->splash, TQ_SIGNAL( closeWindow() ), tdeApp, TQ_SLOT( quit() ) );
 		TQObject::connect(pd->kstarsData, TQ_SIGNAL( progressText(TQString) ),
 				pd->splash, TQ_SLOT( setMessage(TQString) ));
@@ -123,21 +123,21 @@ KStars::~KStars()
 	delete indidriver;
 	delete indiseq;
 	
-	skymap = 0;
-	pd = 0;
-	centralWidget = 0;
-	AAVSODialog = 0;
-	indimenu = 0;
-	indidriver = 0;
-	indiseq = 0;
+	skymap = nullptr;
+	pd = nullptr;
+	centralWidget = nullptr;
+	AAVSODialog = nullptr;
+	indimenu = nullptr;
+	indidriver = nullptr;
+	indiseq = nullptr;
 }
 
 KStars::privatedata::~privatedata() {
 	delete splash;
 	delete kstarsData;
 
-	splash = 0;
-	kstarsData = 0;
+	splash = nullptr;
+	kstarsData = nullptr;
 }
 
 void KStars::clearCachedFindDialog() {
@@ -147,7 +147,7 @@ void KStars::clearCachedFindDialog() {
 	*/
 		if ( findDialog->isHidden() ) {
 			delete findDialog;
-			findDialog = 0;
+			findDialog = nullptr;
 			DialogIsObsolete = false;
 		}
 		else
diff --git a/kstars/kstars/kstars.h b/kstars/kstars/kstars.h
index db8ac252..bbef8d51 100644
--- a/kstars/kstars/kstars.h
+++ b/kstars/kstars/kstars.h
@@ -669,7 +669,7 @@ class KStars::privatedata {
 		KStarsData *kstarsData;
 
 		/**Constructor */
-		privatedata(KStars *parent) : ks(parent), splash(0), kstarsData(0) {}
+		privatedata(KStars *parent) : ks(parent), splash(nullptr), kstarsData(nullptr) {}
 		/**Destructor */
 		~privatedata();
 
diff --git a/kstars/kstars/kstarsactions.cpp b/kstars/kstars/kstarsactions.cpp
index edbd2905..73f3ccde 100644
--- a/kstars/kstars/kstarsactions.cpp
+++ b/kstars/kstars/kstarsactions.cpp
@@ -469,7 +469,7 @@ void KStars::slotRunScript() {
 			message += i18n( "to save the file without executing it, press Save; " );
 			message += i18n( "to cancel the download, press Cancel. " );
 
-			int result = KMessageBox::warningYesNoCancel( 0, message, i18n( "Really Execute Remote Script?" ),
+			int result = KMessageBox::warningYesNoCancel( nullptr, message, i18n( "Really Execute Remote Script?" ),
 					KStdGuiItem::cont(), KStdGuiItem::save() );
 
 			if ( result == KMessageBox::Cancel ) return;
@@ -480,7 +480,7 @@ void KStars::slotRunScript() {
 
 				while ( ! saveURL.isValid() ) {
 					message = i18n( "Save location is invalid. Try another location?" );
-					if ( KMessageBox::warningYesNo( 0, message, i18n( "Invalid Save Location" ), i18n("Try Another"), i18n("Do Not Try") ) == KMessageBox::No ) return;
+					if ( KMessageBox::warningYesNo( nullptr, message, i18n( "Invalid Save Location" ), i18n("Try Another"), i18n("Do Not Try") ) == KMessageBox::No ) return;
 					saveURL = KFileDialog::getSaveURL( TQDir::homeDirPath(), "*.kstars|KStars Scripts (*.kstars)" );
 				}
 
@@ -496,11 +496,11 @@ void KStars::slotRunScript() {
 					if ( tmpfile.name() == fname ) { //upload to remote location
 						if ( ! TDEIO::NetAccess::upload( tmpfile.name(), fileURL, this ) ) {
 							TQString message = i18n( "Could not upload image to remote location: %1" ).arg( fileURL.prettyURL() );
-							KMessageBox::sorry( 0, message, i18n( "Could not upload file" ) );
+							KMessageBox::sorry( nullptr, message, i18n( "Could not upload file" ) );
 						}
 					}
 				} else {
-					KMessageBox::sorry( 0, i18n( "Could not download the file." ), i18n( "Download Error" ) );
+					KMessageBox::sorry( nullptr, i18n( "Could not download the file." ), i18n( "Download Error" ) );
 				}
 
 				return;
@@ -523,7 +523,7 @@ void KStars::slotRunScript() {
 
 		if ( !f.open( IO_ReadOnly) ) {
 			TQString message = i18n( "Could not open file %1" ).arg( f.name() );
-			KMessageBox::sorry( 0, message, i18n( "Could Not Open File" ) );
+			KMessageBox::sorry( nullptr, message, i18n( "Could Not Open File" ) );
 			return;
 		}
 
@@ -547,7 +547,7 @@ void KStars::slotRunScript() {
 
 		if ( ! fileOK ) {
 			int answer;
-			answer = KMessageBox::warningContinueCancel( 0, i18n( "The selected script contains unrecognized elements,"
+			answer = KMessageBox::warningContinueCancel( nullptr, i18n( "The selected script contains unrecognized elements,"
 				"indicating that it was not created using the KStars script builder. "
 				"This script may not function properly, and it may even contain malicious code. "
 				"Would you like to execute it anyway?" ),
@@ -577,7 +577,7 @@ void KStars::slotPrint() {
 				"temporarily switch to the Star Chart color scheme for printing?" );
 
 		int answer;
-		answer = KMessageBox::questionYesNoCancel( 0, message, i18n( "Switch to Star Chart Colors?" ),
+		answer = KMessageBox::questionYesNoCancel( nullptr, message, i18n( "Switch to Star Chart Colors?" ),
 			i18n("Switch Color Scheme"), i18n("Do Not Switch"), "askAgainPrintColors" );
 
 		if ( answer == KMessageBox::Cancel ) return;
diff --git a/kstars/kstars/kstarsdata.cpp b/kstars/kstars/kstarsdata.cpp
index f484f364..e05f6010 100644
--- a/kstars/kstars/kstarsdata.cpp
+++ b/kstars/kstars/kstarsdata.cpp
@@ -60,11 +60,11 @@ TQMap<TQString, TimeZoneRule> KStarsData::Rulebook = TQMap<TQString, TimeZoneRul
 TQStringList KStarsData::CustomColumns = TQStringList::split( " ", "ID RA Dc Tp Nm Mg Mj Mn PA Ig" );
 int KStarsData::objects = 0;
 
-KStarsData::KStarsData() : stdDirs(0), locale(0), 
-		LST(0), HourAngle(0),
-		PCat(0), Moon(0), jmoons(0),
-		starFileReader(0), initTimer(0),
-		source(0), loader(0), pump(0)
+KStarsData::KStarsData() : stdDirs(nullptr), locale(nullptr), 
+		LST(nullptr), HourAngle(nullptr),
+		PCat(nullptr), Moon(nullptr), jmoons(nullptr),
+		starFileReader(nullptr), initTimer(nullptr),
+		source(nullptr), loader(nullptr), pump(nullptr)
 {
 	startupComplete = false;
 	objects++;
@@ -563,7 +563,7 @@ bool KStarsData::readCBoundData( void ) {
 }
 
 bool KStarsData::openStarFile( int i ) {
-	if (starFileReader != 0) delete starFileReader;
+	if (starFileReader) delete starFileReader;
 	TQFile file;
 	TQString snum, fname;
 	snum = TQString().sprintf("%03d", i);
@@ -571,7 +571,7 @@ bool KStarsData::openStarFile( int i ) {
 	if (KSUtils::openDataFile(file, fname)) {
 		starFileReader = new KSFileReader(file); // close file is included
 	} else {
-		starFileReader = 0;
+		starFileReader = nullptr;
 		return false;
 	}
 	return true;
@@ -615,7 +615,7 @@ bool KStarsData::readStarData( void ) {
 //Store the max set magnitude of current session. Will increase in KStarsData::appendNewData()
 	maxSetMagnitude = Options::magLimitDrawStar();
 	delete starFileReader;
-	starFileReader = 0;
+	starFileReader = nullptr;
 	return true;
 }
 
@@ -713,7 +713,7 @@ bool KStarsData::readAsteroidData( void ) {
 			int mJD;
 			double a, e, dble_i, dble_w, dble_N, dble_M, H;
 			long double JD;
-			KSAsteroid *ast = 0;
+			KSAsteroid *ast = nullptr;
 
 			line = fileReader.readLine();
 			name = line.mid( 6, 17 ).stripWhiteSpace();
@@ -751,7 +751,7 @@ bool KStarsData::readCometData( void ) {
 			int mJD;
 			double q, e, dble_i, dble_w, dble_N, Tp;
 			long double JD;
-			KSComet *com = 0;
+			KSComet *com = nullptr;
 
 			line = fileReader.readLine();
 			name = line.mid( 3, 35 ).stripWhiteSpace();
@@ -889,7 +889,7 @@ bool KStarsData::readDeepSkyData( void ) {
 				}
 
 				// create new deepskyobject
-				DeepSkyObject *o = 0;
+				DeepSkyObject *o = nullptr;
 				if ( type==0 ) type = 1; //Make sure we use CATALOG_STAR, not STAR
 				o = new DeepSkyObject( type, r, d, mag, name, name2, longname, cat, a, b, pa, pgc, ugc );
 
@@ -1062,7 +1062,7 @@ bool KStarsData::readUserLog(void)
 		//Note that ObjectNameList::find() looks for the ascii representation 
 		//of star genetive names, so stars are identified that way in the user log.
 		SkyObjectName *sonm = ObjNames.find(name);
-		if (sonm == 0) {
+		if (!sonm) {
 			kdWarning() << k_funcinfo << name << " not found" << endl;
 		} else {
 			sonm->skyObject()->userLog = data;
@@ -1091,7 +1091,7 @@ bool KStarsData::readURLData( TQString urlfile, int type, bool deepOnly ) {
 	
 			SkyObjectName *sonm = ObjNames.find(name);
 			
-			if (sonm == 0) {
+			if (!sonm) {
 				kdWarning() << k_funcinfo << name << " not found" << endl;
 			} else {
 				if ( ! deepOnly || ( sonm->skyObject()->type() > 2 && sonm->skyObject()->type() < 9 ) ) {
@@ -1230,23 +1230,23 @@ CustomCatalog* KStarsData::createCustomCatalog( TQString filename, bool showerrs
 				TQString message( i18n( "Some lines in the custom catalog could not be parsed; see error messages below." ) + "\n" +
 												i18n( "To reject the file, press Cancel. " ) +
 												i18n( "To accept the file (ignoring unparsed lines), press Accept." ) );
-				if ( KMessageBox::warningContinueCancelList( 0, message, errs,
+				if ( KMessageBox::warningContinueCancelList( nullptr, message, errs,
 						i18n( "Some Lines in File Were Invalid" ), i18n( "Accept" ) ) != KMessageBox::Continue ) {
-					return 0; //User pressed Cancel, return NULL pointer
+					return nullptr; //User pressed Cancel, return NULL pointer
 				}
 			}
 		} else { //objList.count() == 0
 			if ( showerrs ) {
 				TQString message( i18n( "No lines could be parsed from the specified file, see error messages below." ) );
-				KMessageBox::informationList( 0, message, errs,
+				KMessageBox::informationList( nullptr, message, errs,
 						i18n( "No Valid Data Found in File" ) );
 			}
-			return 0; //no valid catalog data parsed, return NULL pointer
+			return nullptr; //no valid catalog data parsed, return NULL pointer
 		}
 
 	} else { //Error opening catalog file
 		if ( showerrs )
-			KMessageBox::sorry( 0, i18n( "Could not open custom data file: %1" ).arg( filename ), 
+			KMessageBox::sorry( nullptr, i18n( "Could not open custom data file: %1" ).arg( filename ), 
 					i18n( "Error opening file" ) );
 		else 
 			kdDebug() << i18n( "Could not open custom data file: %1" ).arg( filename ) << endl;
@@ -1256,7 +1256,7 @@ CustomCatalog* KStarsData::createCustomCatalog( TQString filename, bool showerrs
 	if ( objList.count() )
 		return new CustomCatalog( CatalogName, CatalogPrefix, CatalogColor, CatalogEpoch, objList );
 	else
-		return 0;
+		return nullptr;
 }
 
 
@@ -1726,19 +1726,19 @@ void KStarsData::setMagnitude( float newMagnitude, bool forceReload ) {
 void KStarsData::checkDataPumpAction() {
 	// it will set to true if new data should be reloaded
 	bool reloadMoreData = false;
-	if (source != 0) {
+	if (source) {
 		// check if a new reload must be started
 		if (source->magnitude() < maxSetMagnitude) reloadMoreData = true;
 		delete source;
-		source = 0;
+		source = nullptr;
 	}
-	if (pump != 0) {  // if pump exists
+	if (pump) {  // if pump exists
 		delete pump;
-		pump = 0;
+		pump = nullptr;
 	}
-	if (loader != 0) {  // if loader exists
+	if (loader) {  // if loader exists
 		delete loader;
-		loader = 0;
+		loader = nullptr;
 	}
 	// If magnitude was changed while reloading data start a new reload of data.
 	if (reloadMoreData == true) {
@@ -1790,13 +1790,13 @@ void KStarsData::initError(TQString s, bool required = false) {
 		caption = i18n( "Non-Critical File Not Found: %1" ).arg( s );
 	}
 
-	if ( KMessageBox::warningContinueCancel( 0, message, caption, i18n( "Retry" ) ) == KMessageBox::Continue ) {
+	if ( KMessageBox::warningContinueCancel( nullptr, message, caption, i18n( "Retry" ) ) == KMessageBox::Continue ) {
 		initCounter--;
 		initTimer->start(1);
 	} else {
 		if (required) {
 			delete initTimer;
-			initTimer = 0L;
+			initTimer = nullptr;
 			emit initFinished(false);
 		} else {
 			initTimer->start(1);
@@ -1943,7 +1943,7 @@ void KStarsData::slotInitialize() {
 		default:
 			initTimer->stop();
 			delete initTimer;
-			initTimer = 0L;
+			initTimer = nullptr;
 			startupComplete = true;
 			emit initFinished(true);
 			break;
@@ -2288,7 +2288,7 @@ SkyObject* KStarsData::objectNamed( const TQString &name ) {
 
 	SkyObject *so = PCat->findByName(name);
 
-	if (so != 0)
+	if (so)
 		return so;
 
 	//Stars
diff --git a/kstars/kstars/kstarsdcop.cpp b/kstars/kstars/kstarsdcop.cpp
index aa70c8c6..a262eb42 100644
--- a/kstars/kstars/kstarsdcop.cpp
+++ b/kstars/kstars/kstarsdcop.cpp
@@ -453,7 +453,7 @@ void KStars::exportImage( const TQString url, int w, int h ) {
 		if ( tmpfile.name() == fname ) { //attempt to upload image to remote location
 			if ( ! TDEIO::NetAccess::upload( tmpfile.name(), fileURL, this ) ) {
 				TQString message = i18n( "Could not upload image to remote location: %1" ).arg( fileURL.prettyURL() );
-				KMessageBox::sorry( 0, message, i18n( "Could not upload file" ) );
+				KMessageBox::sorry( nullptr, message, i18n( "Could not upload file" ) );
 			}
 		}
 	}
diff --git a/kstars/kstars/kstarsinit.cpp b/kstars/kstars/kstarsinit.cpp
index 9dfc12f0..795acc84 100644
--- a/kstars/kstars/kstarsinit.cpp
+++ b/kstars/kstars/kstarsinit.cpp
@@ -107,7 +107,7 @@ void KStars::initActions() {
 		this, TQ_SLOT( slotSetZoom() ), actionCollection(), "zoom_set" );
 	actCoordSys = new ToggleAction( i18n("Horizontal &Coordinates"), i18n( "Equatorial &Coordinates" ),
 			Key_Space, this, TQ_SLOT( slotCoordSys() ), actionCollection(), "coordsys" );
-	KStdAction::fullScreen( this, TQ_SLOT( slotFullScreen() ), actionCollection(), 0 );
+	KStdAction::fullScreen( this, TQ_SLOT( slotFullScreen() ), actionCollection(), nullptr );
 
 
 //Settings Menu:
@@ -119,46 +119,46 @@ void KStars::initActions() {
 	//
 	//Info Boxes option actions
 	TDEToggleAction *a = new TDEToggleAction(i18n( "Show the information boxes", "Show &Info Boxes"),
-			0, 0, 0, actionCollection(), "show_boxes");
+			0, nullptr, nullptr, actionCollection(), "show_boxes");
 	a->setChecked( Options::showInfoBoxes() );
 	TQObject::connect(a, TQ_SIGNAL( toggled(bool) ), infoBoxes(), TQ_SLOT(setVisible(bool)));
 	TQObject::connect(a, TQ_SIGNAL( toggled(bool) ), this, TQ_SLOT(slotShowGUIItem(bool)));
 
 	a = new TDEToggleAction(i18n( "Show time-related info box", "Show &Time Box"),
-			0, 0, 0, actionCollection(), "show_time_box");
+			0, nullptr, nullptr, actionCollection(), "show_time_box");
 	TQObject::connect(a, TQ_SIGNAL( toggled(bool) ), infoBoxes(), TQ_SLOT(showTimeBox(bool)));
 	TQObject::connect(a, TQ_SIGNAL( toggled(bool) ), this, TQ_SLOT(slotShowGUIItem(bool)));
 
 	a = new TDEToggleAction(i18n( "Show focus-related info box", "Show &Focus Box"),
-			0, 0, 0, actionCollection(), "show_focus_box");
+			0, nullptr, nullptr, actionCollection(), "show_focus_box");
 	TQObject::connect(a, TQ_SIGNAL( toggled(bool) ), infoBoxes(), TQ_SLOT(showFocusBox(bool)));
 	TQObject::connect(a, TQ_SIGNAL( toggled(bool) ), this, TQ_SLOT(slotShowGUIItem(bool)));
 
 	a = new TDEToggleAction(i18n( "Show location-related info box", "Show &Location Box"),
-			0, 0, 0, actionCollection(), "show_location_box");
+			0, nullptr, nullptr, actionCollection(), "show_location_box");
 	TQObject::connect(a, TQ_SIGNAL( toggled(bool) ), infoBoxes(), TQ_SLOT(showGeoBox(bool)));
 	TQObject::connect(a, TQ_SIGNAL( toggled(bool) ), this, TQ_SLOT(slotShowGUIItem(bool)));
 
 //Toolbar view options
 	a = new TDEToggleAction(i18n( "Show Main Toolbar" ),
-			0, 0, 0, actionCollection(), "show_mainToolBar");
+			0, nullptr, nullptr, actionCollection(), "show_mainToolBar");
 	TQObject::connect(a, TQ_SIGNAL( toggled(bool) ), this, TQ_SLOT(slotShowGUIItem(bool)));
 
 	a = new TDEToggleAction(i18n( "Show View Toolbar" ),
-			0, 0, 0, actionCollection(), "show_viewToolBar");
+			0, nullptr, nullptr, actionCollection(), "show_viewToolBar");
 	TQObject::connect(a, TQ_SIGNAL( toggled(bool) ), this, TQ_SLOT(slotShowGUIItem(bool)));
 
 //Statusbar view options
 	a = new TDEToggleAction(i18n( "Show Statusbar" ),
-			0, 0, 0, actionCollection(), "show_statusBar");
+			0, nullptr, nullptr, actionCollection(), "show_statusBar");
 	TQObject::connect(a, TQ_SIGNAL( toggled(bool) ), this, TQ_SLOT(slotShowGUIItem(bool)));
 
 	a = new TDEToggleAction(i18n( "Show Az/Alt Field" ),
-			0, 0, 0, actionCollection(), "show_sbAzAlt");
+			0, nullptr, nullptr, actionCollection(), "show_sbAzAlt");
 	TQObject::connect(a, TQ_SIGNAL( toggled(bool) ), this, TQ_SLOT(slotShowGUIItem(bool)));
 
 	a = new TDEToggleAction(i18n( "Show RA/Dec Field" ),
-			0, 0, 0, actionCollection(), "show_sbRADec");
+			0, nullptr, nullptr, actionCollection(), "show_sbRADec");
 	TQObject::connect(a, TQ_SIGNAL( toggled(bool) ), this, TQ_SLOT(slotShowGUIItem(bool)));
 
 //Color scheme actions.  These are added to the "colorschemes" TDEActionMenu.
@@ -370,7 +370,7 @@ void KStars::datainitFinished(bool worked) {
 
 	if (pd->splash) {
 		delete pd->splash;
-		pd->splash = 0;
+		pd->splash = nullptr;
 	}
 
 	pd->buildGUI();
@@ -445,16 +445,16 @@ void KStars::privatedata::buildGUI() {
 	ks->setCentralWidget( ks->centralWidget );
 
 	//set AAVSO modaless dialog pointer to 0
-	ks->AAVSODialog = 0;
+	ks->AAVSODialog = nullptr;
 
 	//INDI menu started without GUI
 	ks->indimenu = new INDIMenu(ks);
 
 	//INDI driver set to null
-	ks->indidriver = 0;
+	ks->indidriver = nullptr;
 	
 	//INDI img sequence, set to null
-	ks->indiseq = 0;
+	ks->indiseq = nullptr;
 
 	ks->skymap = new SkyMap( ks->data(), ks->centralWidget );
 	// update skymap if KStarsData send update signal
diff --git a/kstars/kstars/kswizard.cpp b/kstars/kstars/kswizard.cpp
index 9d7d6356..2fe4fa6e 100644
--- a/kstars/kstars/kswizard.cpp
+++ b/kstars/kstars/kswizard.cpp
@@ -119,7 +119,7 @@ void KSWizard::initGeoPage() {
 }
 
 void KSWizard::slotChangeCity() {
-	Geo = 0L;
+	Geo = nullptr;
 	
 	if ( CityListBox->currentItem() >= 0 ) {
 		for (GeoLocation *loc = filteredCityList.first(); loc; loc = filteredCityList.next()) {
diff --git a/kstars/kstars/kswizard.h b/kstars/kstars/kswizard.h
index 061af9f3..201779ef 100644
--- a/kstars/kstars/kswizard.h
+++ b/kstars/kstars/kswizard.h
@@ -46,7 +46,7 @@ public:
 		*@p parent pointer to the parent widget
 		*@p name name for the KSWizard object
 		*/
-	KSWizard( TQWidget *parent=0, const char *name=0 );
+	KSWizard( TQWidget *parent=nullptr, const char *name=nullptr );
 
 	/**Destructor */
 	~KSWizard();
diff --git a/kstars/kstars/locationdialog.cpp b/kstars/kstars/locationdialog.cpp
index 6054440a..481487fc 100644
--- a/kstars/kstars/locationdialog.cpp
+++ b/kstars/kstars/locationdialog.cpp
@@ -288,7 +288,7 @@ void LocationDialog::filterCity( void ) {
 
 void LocationDialog::changeCity( void ) {
 	//when the selected city changes, set newCity, and redraw map
-	SelectedCity = 0L;
+	SelectedCity = nullptr;
 	if ( GeoBox->currentItem() >= 0 ) {
 		for (GeoLocation *loc = filteredCityList.first(); loc; loc = filteredCityList.next()) {
 			if ( loc->fullName() == GeoBox->currentText() ) {
@@ -333,7 +333,7 @@ void LocationDialog::addCity( void ) {
 
 	if ( !nameModified && !dataModified ) {
 		TQString message = i18n( "This City already exists in the database." );
-		KMessageBox::sorry( 0, message, i18n( "Error: Duplicate Entry" ) );
+		KMessageBox::sorry( nullptr, message, i18n( "Error: Duplicate Entry" ) );
 		return;
 	}
 
@@ -344,18 +344,18 @@ void LocationDialog::addCity( void ) {
 
 	if ( NewCityName->text().isEmpty() || NewCountryName->text().isEmpty() ) {
 		TQString message = i18n( "All fields (except province) must be filled to add this location." );
-		KMessageBox::sorry( 0, message, i18n( "Fields are Empty" ) );
+		KMessageBox::sorry( nullptr, message, i18n( "Fields are Empty" ) );
 		return;
 
 	//FIXME after strings freeze lifts, separate TZ check from lat/long check
 	} else if ( ! latOk || ! lngOk || ! tzOk ) {
 		TQString message = i18n( "Could not parse coordinates." );
-		KMessageBox::sorry( 0, message, i18n( "Bad Coordinates" ) );
+		KMessageBox::sorry( nullptr, message, i18n( "Bad Coordinates" ) );
 		return;
 	} else {
 		if ( !nameModified ) {
 			TQString message = i18n( "Really override original data for this city?" );
-			if ( KMessageBox::questionYesNo( 0, message, i18n( "Override Existing Data?" ), i18n("Override Data"), i18n("Do Not Override")) == KMessageBox::No )
+			if ( KMessageBox::questionYesNo( nullptr, message, i18n( "Override Existing Data?" ), i18n("Override Data"), i18n("Do Not Override")) == KMessageBox::No )
 				return; //user answered No.
 		}
 
@@ -372,7 +372,7 @@ void LocationDialog::addCity( void ) {
 
 		if ( !file.open( IO_ReadWrite | IO_Append ) ) {
 			TQString message = i18n( "Local cities database could not be opened.\nLocation will not be recorded." );
-			KMessageBox::sorry( 0, message, i18n( "Could Not Open File" ) );
+			KMessageBox::sorry( nullptr, message, i18n( "Could Not Open File" ) );
 			return;
 		} else {
 			char ltsgn = 'N'; if ( lat.degree()<0 ) ltsgn = 'S';
@@ -504,7 +504,7 @@ void LocationDialog::showTZRules( void ) {
 	lines.append( i18n( "ZN: Apr. 1 (01:00) / Oct. 1 (00:00)" ) );
 
 	TQString message = i18n( "Daylight Saving Time Rules" );
-	KMessageBox::informationList( 0, message, lines, message );
+	KMessageBox::informationList( nullptr, message, lines, message );
 }
 
 void LocationDialog::nameChanged( void ) {
diff --git a/kstars/kstars/locationdialog.h b/kstars/kstars/locationdialog.h
index 590948fb..141e40c5 100644
--- a/kstars/kstars/locationdialog.h
+++ b/kstars/kstars/locationdialog.h
@@ -65,7 +65,7 @@ public:
 	*Constructor.  Create all widgets, and pack them into TQLayouts.
 	*Connect Signals to Slots.  Run initCityList().
 	*/
-	LocationDialog( TQWidget* parent = 0 );
+	LocationDialog( TQWidget* parent = nullptr );
 /**
 	*Destructor (empty)
 	*/
diff --git a/kstars/kstars/magnitudespinbox.h b/kstars/kstars/magnitudespinbox.h
index 14a8d0e2..7a9d21f5 100644
--- a/kstars/kstars/magnitudespinbox.h
+++ b/kstars/kstars/magnitudespinbox.h
@@ -36,11 +36,11 @@ class MagnitudeSpinBox  : public KDoubleNumInput
 
 /**Default Constructor.
 	*/
-	MagnitudeSpinBox( TQWidget* parent = 0, const char* name = 0);
+	MagnitudeSpinBox( TQWidget* parent = nullptr, const char* name = nullptr);
 
 /**Constructor.  Set minimum and maximum values for the spinbox.
 	*/
-	MagnitudeSpinBox( double minValue, double maxValue, TQWidget* parent = 0, const char* name = 0);
+	MagnitudeSpinBox( double minValue, double maxValue, TQWidget* parent = nullptr, const char* name = nullptr);
 };
 
 
diff --git a/kstars/kstars/main.cpp b/kstars/kstars/main.cpp
index f8d12121..2af052e5 100644
--- a/kstars/kstars/main.cpp
+++ b/kstars/kstars/main.cpp
@@ -39,13 +39,13 @@ static const char notice[] =
 
 static TDECmdLineOptions options[] =
 {
-	{ "!dump", I18N_NOOP( "Dump sky image to file" ), 0 },
-	{ "script ", I18N_NOOP( "Script to execute" ), 0 },
+	{ "!dump", I18N_NOOP( "Dump sky image to file" ), nullptr },
+	{ "script ", I18N_NOOP( "Script to execute" ), nullptr },
 	{ "width ", I18N_NOOP( "Width of sky image" ), "640" },
 	{ "height ", I18N_NOOP( "Height of sky image" ), "480" },
 	{ "filename ", I18N_NOOP( "Filename for sky image" ), "kstars.png" },
 	{ "date ", I18N_NOOP( "Date and time" ), "" },
-	{ "!paused", I18N_NOOP( "Start with clock paused" ), 0 },
+	{ "!paused", I18N_NOOP( "Start with clock paused" ), nullptr },
 	TDECmdLineLastOption
 };
 
@@ -54,13 +54,13 @@ int main(int argc, char *argv[])
 	TDEAboutData aboutData( "kstars", I18N_NOOP("KStars"),
 		KSTARS_VERSION, description, TDEAboutData::License_GPL,
 		I18N_NOOP("(c) 2001-2003, The KStars Team"), notice, "http://edu.kde.org/kstars");
-	aboutData.addAuthor("Jason Harris",0, "jharris@30doradus.org", "http://www.30doradus.org");
-	aboutData.addAuthor("Heiko Evermann",0, "heiko@evermann.de", "http://www.evermann.de");
-	aboutData.addAuthor("Thomas Kabelmann", 0, "tk78@gmx.de", 0);
-	aboutData.addAuthor("Pablo de Vicente", 0, "pvicentea@wanadoo.es", 0);
-	aboutData.addAuthor("Jasem Mutlaq", 0, "mutlaqja@ikarustech.com", 0 );
-	aboutData.addAuthor("Carsten Niehaus", 0, "cniehaus@gmx.de", 0);
-	aboutData.addAuthor("Mark Hollomon", 0, "mhh@mindspring.com", 0);
+	aboutData.addAuthor("Jason Harris",nullptr, "jharris@30doradus.org", "http://www.30doradus.org");
+	aboutData.addAuthor("Heiko Evermann",nullptr, "heiko@evermann.de", "http://www.evermann.de");
+	aboutData.addAuthor("Thomas Kabelmann", nullptr, "tk78@gmx.de", nullptr);
+	aboutData.addAuthor("Pablo de Vicente", nullptr, "pvicentea@wanadoo.es", nullptr);
+	aboutData.addAuthor("Jasem Mutlaq", nullptr, "mutlaqja@ikarustech.com", nullptr );
+	aboutData.addAuthor("Carsten Niehaus", nullptr, "cniehaus@gmx.de", nullptr);
+	aboutData.addAuthor("Mark Hollomon", nullptr, "mhh@mindspring.com", nullptr);
 	TDECmdLineArgs::init( argc, argv, &aboutData );
 	TDECmdLineArgs::addCmdLineOptions( options ); // Add our own options.
 	TDECmdLineArgs *args = TDECmdLineArgs::parsedArgs();
diff --git a/kstars/kstars/mapcanvas.h b/kstars/kstars/mapcanvas.h
index 8900e4eb..d3cdf9dc 100644
--- a/kstars/kstars/mapcanvas.h
+++ b/kstars/kstars/mapcanvas.h
@@ -44,7 +44,7 @@ public:
 		*world map bitmap, set pointers to the main window and the
 		*LocationDialog parent.
 		*/
-	MapCanvas(TQWidget *parent=0, const char *name=0);
+	MapCanvas(TQWidget *parent=nullptr, const char *name=nullptr);
 	/**Destructor (empty)
 		*/
 	~MapCanvas();
diff --git a/kstars/kstars/objectnamelist.cpp b/kstars/kstars/objectnamelist.cpp
index b86fdac8..9e3667a7 100644
--- a/kstars/kstars/objectnamelist.cpp
+++ b/kstars/kstars/objectnamelist.cpp
@@ -96,7 +96,7 @@ void ObjectNameList::append( SkyObject *object, bool useLongName ) {
 
 SkyObjectName* ObjectNameList::first( const TQString &name ) {
 	sort();
-	SkyObjectName *soName = 0;
+	SkyObjectName *soName = nullptr;
 	// set mode: string is empty set mode to all lists
 	name.isEmpty() ? setMode( allLists ) : setMode( oneList );
 
@@ -121,18 +121,18 @@ SkyObjectName* ObjectNameList::first( const TQString &name ) {
 }
 
 SkyObjectName* ObjectNameList::next() {
-	SkyObjectName *soName = 0;
+	SkyObjectName *soName = nullptr;
 	// get next SkyObjectName object
 	soName = list[ language ] [ currentIndex ].next();
 
 	// if all lists must checked and SkyObjectName is NULL
 	// check next available list in array and set to first element in list
 	// if currentIndex == 26 -> last index is reached
-	if ( mode==allLists && soName==0 && currentIndex<26 ) {
+	if ( mode==allLists && soName==nullptr && currentIndex<26 ) {
 		do {
 			currentIndex++;  // loop through the array
 			soName = list[ language ] [ currentIndex ].first();
-		} while ( currentIndex<26 && soName==0 );  // break if currentIndex == 27 or soName is found
+		} while ( currentIndex<26 && soName==nullptr );  // break if currentIndex == 27 or soName is found
 	}
 
 	return soName;
@@ -190,7 +190,7 @@ void ObjectNameList::remove ( const TQString &name ) {
 
 SkyObjectName* ObjectNameList::find(const TQString &name) {
 	sort();
-	if (name.isNull()) return 0;
+	if (name.isNull()) return nullptr;
 	// find works only in one list and not in all lists
 	setMode(oneList);
 
@@ -205,7 +205,7 @@ SkyObjectName* ObjectNameList::find(const TQString &name) {
 	// last item
 	int upper = l->count() - 1;
 	// break if list is empty
-	if (upper == -1) return 0;
+	if (upper == -1) return nullptr;
 
 	int next;
 
@@ -220,5 +220,5 @@ SkyObjectName* ObjectNameList::find(const TQString &name) {
 		else
 			lower = next + 1;
 	}
-	return 0;
+	return nullptr;
 }
diff --git a/kstars/kstars/opsadvanced.h b/kstars/kstars/opsadvanced.h
index cb337dac..8a895b86 100644
--- a/kstars/kstars/opsadvanced.h
+++ b/kstars/kstars/opsadvanced.h
@@ -39,7 +39,7 @@ class OpsAdvanced : public OpsAdvancedUI
   
 
 public:
-	OpsAdvanced( TQWidget *parent=0, const char *name=0, WFlags fl = 0 );
+	OpsAdvanced( TQWidget *parent=nullptr, const char *name=nullptr, WFlags fl = 0 );
 	~OpsAdvanced();
 
 private slots:
diff --git a/kstars/kstars/opscatalog.h b/kstars/kstars/opscatalog.h
index 2cb1f852..adc377b1 100644
--- a/kstars/kstars/opscatalog.h
+++ b/kstars/kstars/opscatalog.h
@@ -42,7 +42,7 @@ class OpsCatalog : public OpsCatalogUI
   
 
 public:
-	OpsCatalog( TQWidget *parent=0, const char *name=0, WFlags fl = 0 );
+	OpsCatalog( TQWidget *parent=nullptr, const char *name=nullptr, WFlags fl = 0 );
 	~OpsCatalog();
 
 private slots:
diff --git a/kstars/kstars/opscolors.cpp b/kstars/kstars/opscolors.cpp
index e9456b98..150e12ba 100644
--- a/kstars/kstars/opscolors.cpp
+++ b/kstars/kstars/opscolors.cpp
@@ -124,7 +124,7 @@ void OpsColors::slotPreset( int index ) {
 	bool result = setColors( *it );
 	if (!result) {
 		TQString message = i18n( "The specified color scheme file (%1) could not be found, or was corrupt." ).arg( TQString(*it) );
-		KMessageBox::sorry( 0, message, i18n( "Could Not Set Color Scheme" ) );
+		KMessageBox::sorry( nullptr, message, i18n( "Could Not Set Color Scheme" ) );
 	}
 }
 
@@ -161,7 +161,7 @@ void OpsColors::slotAddPreset() {
 	bool okPressed = false;
 	TQString schemename = KInputDialog::getText( i18n( "New Color Scheme" ),
 						    i18n( "Enter a name for the new color scheme:" ),
-						    TQString(), &okPressed, 0 );
+						    TQString(), &okPressed, nullptr );
 
 	if ( okPressed && ! schemename.isEmpty() ) {
 		if ( ksw->data()->colorScheme()->save( schemename ) ) {
@@ -185,7 +185,7 @@ void OpsColors::slotRemovePreset() {
 
 	if ( !cdatFile.exists() || !cdatFile.open( IO_ReadWrite ) ) {
 		TQString message = i18n( "Local color scheme index file could not be opened.\nScheme cannot be removed." );
-		KMessageBox::sorry( 0, message, i18n( "Could Not Open File" ) );
+		KMessageBox::sorry( nullptr, message, i18n( "Could Not Open File" ) );
 	} else {
 		//Remove entry from the ListBox and from the TQStringList holding filenames.
 		//We don't want another color scheme to be selected, so first
@@ -214,7 +214,7 @@ void OpsColors::slotRemovePreset() {
 			colorFile.setName( locateLocal( "appdata", filename ) ); //determine filename in local user KDE directory tree.
 			if ( !colorFile.remove() ) {
 				TQString message = i18n( "Could not delete the file: %1" ).arg( colorFile.name() );
-				KMessageBox::sorry( 0, message, i18n( "Error Deleting File" ) );
+				KMessageBox::sorry( nullptr, message, i18n( "Error Deleting File" ) );
 			}
 
 			//remove the old colors.dat file, and rebuild it with the modified string list.
@@ -225,7 +225,7 @@ void OpsColors::slotRemovePreset() {
 				stream << slist[i] << endl;
 		} else {
 			TQString message = i18n( "Could not find an entry named %1 in colors.dat." ).arg( name );
-			KMessageBox::sorry( 0, message, i18n( "Scheme Not Found" ) );
+			KMessageBox::sorry( nullptr, message, i18n( "Scheme Not Found" ) );
 		}
 		cdatFile.close();
 	}
diff --git a/kstars/kstars/opscolors.h b/kstars/kstars/opscolors.h
index ef9aed5d..2e019a02 100644
--- a/kstars/kstars/opscolors.h
+++ b/kstars/kstars/opscolors.h
@@ -44,7 +44,7 @@ class OpsColors : public OpsColorsUI
   
 
 public:
-	OpsColors( TQWidget *parent=0, const char *name=0, WFlags fl = 0 );
+	OpsColors( TQWidget *parent=nullptr, const char *name=nullptr, WFlags fl = 0 );
 	~OpsColors();
 
 private slots:
diff --git a/kstars/kstars/opsguides.h b/kstars/kstars/opsguides.h
index b7a6b9e2..d45a1c8c 100644
--- a/kstars/kstars/opsguides.h
+++ b/kstars/kstars/opsguides.h
@@ -25,7 +25,7 @@ class OpsGuides : public OpsGuidesUI
   
 
 public:
-	OpsGuides( TQWidget* parent = 0, const char* name = 0, WFlags fl = 0 );
+	OpsGuides( TQWidget* parent = nullptr, const char* name = nullptr, WFlags fl = 0 );
 	~OpsGuides();
 
 private slots:
diff --git a/kstars/kstars/opssolarsystem.h b/kstars/kstars/opssolarsystem.h
index 5fd964d3..5fcce200 100644
--- a/kstars/kstars/opssolarsystem.h
+++ b/kstars/kstars/opssolarsystem.h
@@ -35,7 +35,7 @@ class OpsSolarSystem : public OpsSolarSystemUI
   
 
 public:
-	OpsSolarSystem( TQWidget *parent=0, const char *name=0, WFlags fl = 0 );
+	OpsSolarSystem( TQWidget *parent=nullptr, const char *name=nullptr, WFlags fl = 0 );
 	~OpsSolarSystem();
 
 private slots:
diff --git a/kstars/kstars/planetcatalog.cpp b/kstars/kstars/planetcatalog.cpp
index 34579fea..7307e1da 100644
--- a/kstars/kstars/planetcatalog.cpp
+++ b/kstars/kstars/planetcatalog.cpp
@@ -29,7 +29,7 @@
 #include "skyobject.h"
 #include "objectnamelist.h"
 
-PlanetCatalog::PlanetCatalog(KStarsData *dat) : Earth(0), Sun(0), kd(dat) {
+PlanetCatalog::PlanetCatalog(KStarsData *dat) : Earth(nullptr), Sun(nullptr), kd(dat) {
 	planets.setAutoDelete(true);
 }
 
@@ -99,20 +99,20 @@ bool PlanetCatalog::initialize() {
 void PlanetCatalog::addObject( ObjectNameList &ObjNames ) const {
 	TQPtrListIterator<KSPlanetBase> it(planets);
 
-	for (KSPlanetBase *ksp = it.toFirst(); ksp != 0; ksp = ++it) {
+	for (KSPlanetBase *ksp = it.toFirst(); ksp; ksp = ++it) {
 		ObjNames.append( ksp );
 	}
 }
 
 void PlanetCatalog::findPosition( const KSNumbers *num, const dms *lat, const dms *LST ) {
 	Earth->findPosition(num);
-	for (KSPlanetBase * ksp = planets.first(); ksp != 0; ksp = planets.next()) {
+	for (KSPlanetBase * ksp = planets.first(); ksp; ksp = planets.next()) {
 		ksp->findPosition(num, lat, LST, Earth);
 	}
 }
 
 void PlanetCatalog::EquatorialToHorizontal( dms *LST, const dms *lat ) {
-	for (KSPlanetBase * ksp = planets.first(); ksp != 0; ksp = planets.next()) {
+	for (KSPlanetBase * ksp = planets.first(); ksp; ksp = planets.next()) {
 		ksp->EquatorialToHorizontal( LST, lat);
 		if ( ksp->hasTrail() ) ksp->updateTrail( LST, lat );
 	}
@@ -124,7 +124,7 @@ bool PlanetCatalog::isPlanet(SkyObject *so) const {
 
 	TQPtrListIterator<KSPlanetBase> it(planets);
 
-	for (KSPlanetBase *ksp = it.toFirst(); ksp != 0; ksp = ++it) {
+	for (KSPlanetBase *ksp = it.toFirst(); ksp; ksp = ++it) {
 		if (so == ksp)
 			return true;
 	}
@@ -138,14 +138,14 @@ KSPlanetBase *PlanetCatalog::findByName( const TQString n) const {
 
 	TQPtrListIterator<KSPlanetBase> it(planets);
 
-	for (KSPlanetBase *ksp = it.toFirst(); ksp != 0; ksp = ++it) {
+	for (KSPlanetBase *ksp = it.toFirst(); ksp; ksp = ++it) {
 		if (ksp->name() == n)
 			return ksp;
 	}
 
 	kdDebug() << k_funcinfo << "could not find planet named " << n << endl;
 
-	return 0;
+	return nullptr;
 }
 
 static double dist_squared(const SkyPoint *a, const SkyPoint *b) {
@@ -158,11 +158,11 @@ static double dist_squared(const SkyPoint *a, const SkyPoint *b) {
 
 SkyObject *PlanetCatalog::findClosest(const SkyPoint *p, double &r) const {
 	TQPtrListIterator<KSPlanetBase> it(planets);
-	SkyObject *found = 0;
+	SkyObject *found = nullptr;
 	double trialr = 0.0;
 	double rmin = 100000.0;
 
-	for (KSPlanetBase *ksp = it.toFirst(); ksp != 0; ksp = ++it) {
+	for (KSPlanetBase *ksp = it.toFirst(); ksp; ksp = ++it) {
 		trialr = dist_squared(ksp, p);
 		if (trialr < rmin) {
 			rmin = trialr;
diff --git a/kstars/kstars/simclock.h b/kstars/kstars/simclock.h
index 5a81f008..c1185712 100644
--- a/kstars/kstars/simclock.h
+++ b/kstars/kstars/simclock.h
@@ -40,7 +40,7 @@ class SimClock : public TQObject, public SimClockInterface {
 		 * @param parent parent object for the clock
 		 * @param when the date/time to which the SimClock should be initialized in UTC
 		 */
-		SimClock(TQObject *parent = 0, const KStarsDateTime &when = KStarsDateTime::currentDateTime() );
+		SimClock(TQObject *parent = nullptr, const KStarsDateTime &when = KStarsDateTime::currentDateTime() );
 		/**
 		 * Constructor
 		 * @param old a SimClock to initialize from.
diff --git a/kstars/kstars/skymap.cpp b/kstars/kstars/skymap.cpp
index 1ef6f6ed..488ddf1d 100644
--- a/kstars/kstars/skymap.cpp
+++ b/kstars/kstars/skymap.cpp
@@ -53,12 +53,12 @@
 
 SkyMap::SkyMap(KStarsData *d, TQWidget *parent, const char *name )
 	: TQWidget (parent,name), computeSkymap(true), angularDistanceMode(false),
-		ksw(0), data(d), pmenu(0), sky(0), sky2(0), IBoxes(0),
-		ClickedObject(0), FocusObject(0), TransientObject(0),
-		starpix(0), pts(0), sp(0)
+		ksw(nullptr), data(d), pmenu(nullptr), sky(nullptr), sky2(nullptr), IBoxes(nullptr),
+		ClickedObject(nullptr), FocusObject(nullptr), TransientObject(nullptr),
+		starpix(nullptr), pts(nullptr), sp(nullptr)
 {
 	if ( parent ) ksw = (KStars*) parent->parent();
-	else ksw = 0;
+	else ksw = nullptr;
 
 	pts = new TQPointArray( 2000 );  // points for milkyway and horizon
 	sp = new SkyPoint();            // needed by coordinate grid
@@ -1335,7 +1335,7 @@ void SkyMap::addLink( void ) {
 
 			if ( !file.open( IO_ReadWrite | IO_Append ) ) {
 				TQString message = i18n( "Custom image-links file could not be opened.\nLink cannot be recorded for future sessions." );
-				KMessageBox::sorry( 0, message, i18n( "Could Not Open File" ) );
+				KMessageBox::sorry( nullptr, message, i18n( "Could Not Open File" ) );
 				return;
 			} else {
 				entry = clickedObject()->name() + ":" + adialog.desc() + ":" + adialog.url();
@@ -1352,7 +1352,7 @@ void SkyMap::addLink( void ) {
 			file.setName( locateLocal( "appdata", "info_url.dat" ) ); //determine filename in local user KDE directory tree.
 
 			if ( !file.open( IO_ReadWrite | IO_Append ) ) {
-				TQString message = i18n( "Custom information-links file could not be opened.\nLink cannot be recorded for future sessions." );						KMessageBox::sorry( 0, message, i18n( "Could not Open File" ) );
+				TQString message = i18n( "Custom information-links file could not be opened.\nLink cannot be recorded for future sessions." );						KMessageBox::sorry( nullptr, message, i18n( "Could not Open File" ) );
 				return;
 			} else {
 				entry = clickedObject()->name() + ":" + adialog.desc() + ":" + adialog.url();
diff --git a/kstars/kstars/skymap.h b/kstars/kstars/skymap.h
index 55c4da2e..97ed8c96 100644
--- a/kstars/kstars/skymap.h
+++ b/kstars/kstars/skymap.h
@@ -64,7 +64,7 @@ public:
 	*Constructor.  Read stored settings from TDEConfig object (focus position,
 	*zoom factor, sky color, etc.).  Run initPopupMenus().
 	*/
-	SkyMap( KStarsData *d, TQWidget *parent=0, const char *name=0);
+	SkyMap( KStarsData *d, TQWidget *parent=nullptr, const char *name=nullptr);
 
 /**
 	*Destructor (empty)
diff --git a/kstars/kstars/skyobject.cpp b/kstars/kstars/skyobject.cpp
index d6e07991..2ab0f3df 100644
--- a/kstars/kstars/skyobject.cpp
+++ b/kstars/kstars/skyobject.cpp
@@ -52,11 +52,11 @@ SkyObject::SkyObject( int t, dms r, dms d, float m,
 						TQString n, TQString n2, TQString lname ) : SkyPoint( r, d) {
 	setType( t );
 	Magnitude = m;
-	Name = 0;
+	Name = nullptr;
 	setName(n);
-	Name2 = 0;
+	Name2 = nullptr;
 	setName2(n2);
-	LongName = 0;
+	LongName = nullptr;
 	setLongName(lname);
 }
 
@@ -64,11 +64,11 @@ SkyObject::SkyObject( int t, double r, double d, float m,
 						TQString n, TQString n2, TQString lname ) : SkyPoint( r, d) {
 	setType( t );
 	Magnitude = m;
-	Name = 0;
+	Name = nullptr;
 	setName(n);
-	Name2 = 0;
+	Name2 = nullptr;
 	setName2(n2);
-	LongName = 0;
+	LongName = nullptr;
 	setLongName(lname);
 }
 
@@ -86,7 +86,7 @@ void SkyObject::setLongName( const TQString &longname ) {
 		else if ( hasName2() )
 			LongName = new TQString(*Name2);
 		else
-			LongName = 0;
+			LongName = nullptr;
 	} else {
 		LongName = new TQString(longname);
 	}
@@ -328,7 +328,7 @@ void SkyObject::setName( const TQString &name ) {
 	if (!name.isEmpty())
 		Name = new TQString(name);
 	else
-		{ Name = 0; /*kdDebug() << "name saved" << endl;*/ }
+		{ Name = nullptr; /*kdDebug() << "name saved" << endl;*/ }
 }
 
 void SkyObject::setName2( const TQString &name2 ) {
@@ -336,7 +336,7 @@ void SkyObject::setName2( const TQString &name2 ) {
 	if (!name2.isEmpty())
 		Name2 = new TQString(name2);
 	else
-		{ Name2 = 0; /*kdDebug() << "name2 saved" << endl;*/ }
+		{ Name2 = nullptr; /*kdDebug() << "name2 saved" << endl;*/ }
 }
 
 TQString SkyObject::messageFromTitle( const TQString &imageTitle ) {
diff --git a/kstars/kstars/skyobject.h b/kstars/kstars/skyobject.h
index da86b5d8..4776f661 100644
--- a/kstars/kstars/skyobject.h
+++ b/kstars/kstars/skyobject.h
@@ -232,13 +232,13 @@ public:
 	*@param dt  date/time for which the coords will be computed.
 	*@param geo pointer to geographic location (used for solar system only)
 	*/
-	SkyPoint recomputeCoords( const KStarsDateTime &dt, const GeoLocation *geo=0 );
+	SkyPoint recomputeCoords( const KStarsDateTime &dt, const GeoLocation *geo=nullptr );
 
-	const bool hasName() const { return Name != 0; }
+	const bool hasName() const { return Name != nullptr; }
 	
-	const bool hasName2() const { return Name2 != 0; }
+	const bool hasName2() const { return Name2 != nullptr; }
 	
-	const bool hasLongName() const { return LongName != 0; }
+	const bool hasLongName() const { return LongName != nullptr; }
 	
 /**@short Given the Image title from a URL file, try to convert it to an image credit string.
 	*/
diff --git a/kstars/kstars/skyobjectname.h b/kstars/kstars/skyobjectname.h
index 467d14d3..e54be3ce 100644
--- a/kstars/kstars/skyobjectname.h
+++ b/kstars/kstars/skyobjectname.h
@@ -37,7 +37,7 @@ class SkyObjectName {
 	
 	public:
 	/**Constructor*/
-		SkyObjectName (const TQString &str = TQString(), SkyObject *obj = 0);
+		SkyObjectName (const TQString &str = TQString(), SkyObject *obj = nullptr);
 
 	/**Destructor (empty)*/
 		~SkyObjectName() {}
diff --git a/kstars/kstars/skypoint.h b/kstars/kstars/skypoint.h
index 7b91c295..be051b78 100644
--- a/kstars/kstars/skypoint.h
+++ b/kstars/kstars/skypoint.h
@@ -290,7 +290,7 @@ public:
 	*@param lat does nothing in this implementation (see KSPlanetBase::updateCoords()).
 	*@param LST does nothing in this implementation (see KSPlanetBase::updateCoords()).
 	*/
-	virtual void updateCoords( KSNumbers *num, bool includePlanets=true, const dms *lat=0, const dms *LST=0 );
+	virtual void updateCoords( KSNumbers *num, bool includePlanets=true, const dms *lat=nullptr, const dms *LST=nullptr );
 
 /**Computes the apparent coordinates for this SkyPoint for any epoch,
 	*accounting for the effects of precession, nutation, and aberration.
diff --git a/kstars/kstars/stardatasink.h b/kstars/kstars/stardatasink.h
index 59efb9eb..d418495d 100644
--- a/kstars/kstars/stardatasink.h
+++ b/kstars/kstars/stardatasink.h
@@ -42,7 +42,7 @@ class StarDataSink : public TQObject, public TQDataSink {
 
 	public:
 	/** constructor	*/
-		StarDataSink( KStarsData *parent, const char *name=0 );
+		StarDataSink( KStarsData *parent, const char *name=nullptr );
 
 	/** destructor */
 		~StarDataSink();
diff --git a/kstars/kstars/starobject.h b/kstars/kstars/starobject.h
index 2d0dd4b1..d0d0d20d 100644
--- a/kstars/kstars/starobject.h
+++ b/kstars/kstars/starobject.h
@@ -133,7 +133,7 @@ class StarObject : public SkyObject {
 	*@param lat does nothing in this implementation (see KSPlanetBase::updateCoords()).
 	*@param LST does nothing in this implementation (see KSPlanetBase::updateCoords()).
 	*/
-	virtual void updateCoords( KSNumbers *num, bool includePlanets=true, const dms *lat=0, const dms *LST=0 );
+	virtual void updateCoords( KSNumbers *num, bool includePlanets=true, const dms *lat=nullptr, const dms *LST=nullptr );
 
 /**@short Set the Ra and Dec components of the star's proper motion, in milliarcsec/year.
 	*Note that the RA component is multiplied by cos(dec).
diff --git a/kstars/kstars/streamwg.cpp b/kstars/kstars/streamwg.cpp
index fb4d3c7b..6de45e6c 100644
--- a/kstars/kstars/streamwg.cpp
+++ b/kstars/kstars/streamwg.cpp
@@ -252,17 +252,17 @@ void StreamWG::captureImage()
 	if ( tmpfile.name() == fname )
 	{ //need to upload to remote location
 	
-	  if ( ! TDEIO::NetAccess::upload( tmpfile.name(), currentFileURL, (TQWidget*) 0 ) )
+	  if ( ! TDEIO::NetAccess::upload( tmpfile.name(), currentFileURL, (TQWidget*) nullptr ) )
 	  {
 		TQString message = i18n( "Could not upload image to remote location: %1" ).arg( currentFileURL.prettyURL() );
-		KMessageBox::sorry( 0, message, i18n( "Could not upload file" ) );
+		KMessageBox::sorry( nullptr, message, i18n( "Could not upload file" ) );
 	  }
 	}
   }
   else
   {
 		TQString message = i18n( "Invalid URL: %1" ).arg( currentFileURL.url() );
-		KMessageBox::sorry( 0, message, i18n( "Invalid URL" ) );
+		KMessageBox::sorry( nullptr, message, i18n( "Invalid URL" ) );
   }
 
 }
@@ -289,7 +289,7 @@ void VideoWG::newFrame(unsigned char *buffer, int buffSiz, int w, int h)
   
   //if (color)
   if (buffSiz > totalBaseCount)
-     streamImage = new TQImage(buffer, w, h, 32, 0, 0, TQImage::BigEndian);
+     streamImage = new TQImage(buffer, w, h, 32, nullptr, 0, TQImage::BigEndian);
    else
    
     streamImage = new TQImage(buffer, w, h, 8, grayTable, 256, TQImage::IgnoreEndian);
diff --git a/kstars/kstars/streamwg.h b/kstars/kstars/streamwg.h
index 1e1ca1c2..65ea008a 100644
--- a/kstars/kstars/streamwg.h
+++ b/kstars/kstars/streamwg.h
@@ -32,7 +32,7 @@
   
    
     public:
-      StreamWG(INDIStdDevice *inStdDev, TQWidget * parent =0, const char * name =0);
+      StreamWG(INDIStdDevice *inStdDev, TQWidget * parent =nullptr, const char * name =nullptr);
       ~StreamWG();
  
    friend class VideoWG;
@@ -70,7 +70,7 @@
   
    
     public:
-      VideoWG(TQWidget * parent =0, const char * name =0);
+      VideoWG(TQWidget * parent =nullptr, const char * name =nullptr);
       ~VideoWG();
       
       friend class StreamWG;
diff --git a/kstars/kstars/telescopeprop.cpp b/kstars/kstars/telescopeprop.cpp
index bd33147e..6ea078e4 100644
--- a/kstars/kstars/telescopeprop.cpp
+++ b/kstars/kstars/telescopeprop.cpp
@@ -228,7 +228,7 @@ void telescopeProp::removeScope()
   index = telescopeListBox->currentItem();
   finalIndex = findDeviceIndex(index);
 
-  if (KMessageBox::warningContinueCancel( 0, i18n("Are you sure you want to remove %1?").arg(indi_driver->devices[finalIndex]->label), i18n("Delete Confirmation"),KStdGuiItem::del())!=KMessageBox::Continue)
+  if (KMessageBox::warningContinueCancel( nullptr, i18n("Are you sure you want to remove %1?").arg(indi_driver->devices[finalIndex]->label), i18n("Delete Confirmation"),KStdGuiItem::del())!=KMessageBox::Continue)
            return;
 
   telescopeListBox->removeItem(index);
diff --git a/kstars/kstars/telescopeprop.h b/kstars/kstars/telescopeprop.h
index c2404230..69b6d8f6 100644
--- a/kstars/kstars/telescopeprop.h
+++ b/kstars/kstars/telescopeprop.h
@@ -29,7 +29,7 @@ class telescopeProp : public scopeProp
   
 
 public:
-  telescopeProp(TQWidget* parent = 0, const char* name = 0, bool modal = false, WFlags fl = 0 );
+  telescopeProp(TQWidget* parent = nullptr, const char* name = nullptr, bool modal = false, WFlags fl = 0 );
   ~telescopeProp();
   /*$PUBLIC_FUNCTIONS$*/
 
diff --git a/kstars/kstars/telescopewizardprocess.cpp b/kstars/kstars/telescopewizardprocess.cpp
index 096e4948..b25ff1c9 100644
--- a/kstars/kstars/telescopewizardprocess.cpp
+++ b/kstars/kstars/telescopewizardprocess.cpp
@@ -149,9 +149,9 @@ progressScan = new KProgressDialog(this, "autoscan", i18n("Autoscan"), i18n("Ple
    progressScan->show();
     }
     else if (linkResult == 2)
-      KMessageBox::queuedMessageBox(0, KMessageBox::Information, i18n("Please wait while KStars tries to connect to your telescope..."));
+      KMessageBox::queuedMessageBox(nullptr, KMessageBox::Information, i18n("Please wait while KStars tries to connect to your telescope..."));
     else if (linkResult == -1)
-      KMessageBox::error(0, i18n("Error. Unable to locate telescope drivers."));
+      KMessageBox::error(nullptr, i18n("Error. Unable to locate telescope drivers."));
      break;
   default:
      break;
@@ -276,7 +276,7 @@ void telescopeWizardProcess::processPort()
      {
        indidriver->processDeviceStatus(1);
        Reset();
-       KMessageBox::error(0, i18n("Error: connection timeout. Unable to communicate with an INDI server"));
+       KMessageBox::error(nullptr, i18n("Error: connection timeout. Unable to communicate with an INDI server"));
        close();
        return;
      }
@@ -333,7 +333,7 @@ void telescopeWizardProcess::scanPorts()
 
      if ( (unsigned) currentPort >= portList.count())
      {
-      KMessageBox::sorry(0, i18n("Sorry. KStars failed to detect any attached telescopes, please check your settings and try again."));
+      KMessageBox::sorry(nullptr, i18n("Sorry. KStars failed to detect any attached telescopes, please check your settings and try again."));
       linkRejected = true;
       indidriver->processDeviceStatus(1);
       Reset();
diff --git a/kstars/kstars/telescopewizardprocess.h b/kstars/kstars/telescopewizardprocess.h
index 04c24054..abb8bc66 100644
--- a/kstars/kstars/telescopewizardprocess.h
+++ b/kstars/kstars/telescopewizardprocess.h
@@ -29,7 +29,7 @@ TQ_OBJECT
   
 
 public:
-	telescopeWizardProcess( TQWidget* parent = 0, const char* name = 0);
+	telescopeWizardProcess( TQWidget* parent = nullptr, const char* name = nullptr);
 	~telescopeWizardProcess();
 
 	unsigned int currentPage;
diff --git a/kstars/kstars/thumbnaileditor.h b/kstars/kstars/thumbnaileditor.h
index 4e82cb72..493ad93c 100644
--- a/kstars/kstars/thumbnaileditor.h
+++ b/kstars/kstars/thumbnaileditor.h
@@ -30,7 +30,7 @@ class ThumbImage : public TQLabel
 TQ_OBJECT
   
 public:
-	ThumbImage( TQWidget *parent, const char *name = 0 );
+	ThumbImage( TQWidget *parent, const char *name = nullptr );
 	~ThumbImage();
 
 	void setImage( TQPixmap *pm ) { Image = pm; setFixedSize( Image->width(), Image->height() ); }
@@ -65,7 +65,7 @@ class ThumbnailEditor : public KDialogBase
 TQ_OBJECT
   
 public:
-	ThumbnailEditor( TQWidget *parent, const char *name=0 );
+	ThumbnailEditor( TQWidget *parent, const char *name=nullptr );
 	~ThumbnailEditor();
 	TQPixmap thumbnail();
 
diff --git a/kstars/kstars/thumbnailpicker.cpp b/kstars/kstars/thumbnailpicker.cpp
index 5339f4a3..3720f803 100644
--- a/kstars/kstars/thumbnailpicker.cpp
+++ b/kstars/kstars/thumbnailpicker.cpp
@@ -309,7 +309,7 @@ void ThumbnailPicker::slotSetFromURL() {
 			TQImage im( localFile.name() );
 
 			if ( im.isNull() ) {
-				KMessageBox::sorry( 0, 
+				KMessageBox::sorry( nullptr, 
 						i18n("Failed to load image at %1").arg( localFile.name() ),
 						i18n("Failed to Load Image") );
 				return;
diff --git a/kstars/kstars/thumbnailpicker.h b/kstars/kstars/thumbnailpicker.h
index 4396e189..359a76ab 100644
--- a/kstars/kstars/thumbnailpicker.h
+++ b/kstars/kstars/thumbnailpicker.h
@@ -39,7 +39,7 @@ class ThumbnailPicker : public KDialogBase
 TQ_OBJECT
   
 public:
-	ThumbnailPicker( SkyObject *o, const TQPixmap &current, TQWidget *parent=0, const char *name=0 );
+	ThumbnailPicker( SkyObject *o, const TQPixmap &current, TQWidget *parent=nullptr, const char *name=nullptr );
 	~ThumbnailPicker();
 
 	TQPixmap* image() { return Image; }
diff --git a/kstars/kstars/timebox.h b/kstars/kstars/timebox.h
index 3632b169..4291d38a 100644
--- a/kstars/kstars/timebox.h
+++ b/kstars/kstars/timebox.h
@@ -64,12 +64,12 @@ public:
 	/**
 	* returns a TQTime object constructed from the fields of the timebox
 	*/
-	TQTime createTime(bool *ok=0);
+	TQTime createTime(bool *ok=nullptr);
 
 	/**
 	* returns a ExtDate object constructed from the fields of the timebox
 	*/
-	ExtDate createDate(bool *ok=0);
+	ExtDate createDate(bool *ok=nullptr);
 
 
 	/**
diff --git a/kstars/kstars/timedialog.h b/kstars/kstars/timedialog.h
index 18d0558b..a63a38fb 100644
--- a/kstars/kstars/timedialog.h
+++ b/kstars/kstars/timedialog.h
@@ -49,7 +49,7 @@ public:
 	*Constructor.  Creates widgets and packs them into TQLayouts.
 	*Connects	Signals and Slots.
 	*/
-	TimeDialog( const KStarsDateTime &now, TQWidget* parent = 0 );
+	TimeDialog( const KStarsDateTime &now, TQWidget* parent = nullptr );
 
 /**
 	*Destructor (empty)
diff --git a/kstars/kstars/timespinbox.cpp b/kstars/kstars/timespinbox.cpp
index df3fa775..799ef98b 100644
--- a/kstars/kstars/timespinbox.cpp
+++ b/kstars/kstars/timespinbox.cpp
@@ -40,7 +40,7 @@
 TimeSpinBox::TimeSpinBox( TQWidget *parent, const char *name, bool _daysonly )
 	: TQSpinBox ( -41, 41, 1 /* step */, parent, name )
 {
-	setValidator( 0 );
+	setValidator( nullptr );
 	setButtonSymbols( TQSpinBox::PlusMinus );
 	editor()->setReadOnly( true );
 	setValue( 4 ); //1 second (real time)
diff --git a/kstars/kstars/timespinbox.h b/kstars/kstars/timespinbox.h
index 2498c516..63d49a78 100644
--- a/kstars/kstars/timespinbox.h
+++ b/kstars/kstars/timespinbox.h
@@ -33,7 +33,7 @@ TQ_OBJECT
   
 public:
 /**Constructor */
-	TimeSpinBox( TQWidget *parent, const char* name=0, bool daysOnly = false );
+	TimeSpinBox( TQWidget *parent, const char* name=nullptr, bool daysOnly = false );
 /**Destructor (empty)*/
 	~TimeSpinBox() {}
 
diff --git a/kstars/kstars/timestepbox.h b/kstars/kstars/timestepbox.h
index e8a1c6ba..8c7b6dfe 100644
--- a/kstars/kstars/timestepbox.h
+++ b/kstars/kstars/timestepbox.h
@@ -38,7 +38,7 @@ TQ_OBJECT
   
 public:
 	/**Constructor. */
-	TimeStepBox( TQWidget *parent=0, const char* name=0, bool daysonly=false );
+	TimeStepBox( TQWidget *parent=nullptr, const char* name=nullptr, bool daysonly=false );
 	/**Destructor. (empty)*/
 	~TimeStepBox() {}
 
diff --git a/kstars/kstars/timeunitbox.h b/kstars/kstars/timeunitbox.h
index ae57e2b0..136f296f 100644
--- a/kstars/kstars/timeunitbox.h
+++ b/kstars/kstars/timeunitbox.h
@@ -48,7 +48,7 @@ class TimeUnitBox : public TQVBox {
   
 public:
 	/**Constructor*/
-	TimeUnitBox(TQWidget *parent=0, const char *name=0, bool daysonly = false);
+	TimeUnitBox(TQWidget *parent=nullptr, const char *name=nullptr, bool daysonly = false);
 	/**Destructor (empty)*/
 	~TimeUnitBox();
 	/**@return the value of UnitStep for the current spinbox value() */
diff --git a/kstars/kstars/toggleaction.h b/kstars/kstars/toggleaction.h
index b4ee9441..c89c2377 100644
--- a/kstars/kstars/toggleaction.h
+++ b/kstars/kstars/toggleaction.h
@@ -35,9 +35,9 @@ class ToggleAction : public TDEAction {
 		
 	public:
 		/**Constructor. */
-		ToggleAction(const TQString& ontext, const TQIconSet& onpix, const TQString& offtext, const TQIconSet& offpix, int accel, const TQObject* receiver, const char* slot, TQObject* parent = 0, const char* name = 0 ) ;
+		ToggleAction(const TQString& ontext, const TQIconSet& onpix, const TQString& offtext, const TQIconSet& offpix, int accel, const TQObject* receiver, const char* slot, TQObject* parent = nullptr, const char* name = nullptr ) ;
 		/**Constructor. Same as above, but without icons. */
-		ToggleAction(const TQString& ontext, const TQString& offtext, int accel, const TQObject* receiver, const char* slot, TQObject* parent = 0, const char* name = 0 ) ;
+		ToggleAction(const TQString& ontext, const TQString& offtext, int accel, const TQObject* receiver, const char* slot, TQObject* parent = nullptr, const char* name = nullptr ) ;
 
 		/**Sets the ToolTip text for the "on" state. 
 			*@p tip the tooltip string
diff --git a/kstars/kstars/tools/altvstime.cpp b/kstars/kstars/tools/altvstime.cpp
index 869fa888..2686ee19 100644
--- a/kstars/kstars/tools/altvstime.cpp
+++ b/kstars/kstars/tools/altvstime.cpp
@@ -206,7 +206,7 @@ void AltVsTime::slotBrowseObject(void) {
 
 void AltVsTime::processObject( SkyObject *o, bool forceAdd ) {
 	KSNumbers *num = new KSNumbers( getDate().djd() );
-	KSNumbers *oldNum = 0;
+	KSNumbers *oldNum = nullptr;
 
 	//If the object is in the solar system, recompute its position for the given epochLabel
 	if ( o && o->isSolarSystem() ) {
@@ -374,7 +374,7 @@ void AltVsTime::computeSunRiseSetTimes() {
 void AltVsTime::slotUpdateDateLoc(void) {
 	KStarsDateTime today = getDate();
 	KSNumbers *num = new KSNumbers( today.djd() );
-	KSNumbers *oldNum = 0;
+	KSNumbers *oldNum = nullptr;
 	dms LST = geo->GSTtoLST( today.gst() );
 
 	//First determine time of sunset and sunrise
@@ -412,7 +412,7 @@ void AltVsTime::slotUpdateDateLoc(void) {
 				if ( o->isSolarSystem() ) {
 					o->updateCoords( oldNum, true, ks->data()->geo()->lat(), ks->LST() );
                                         delete oldNum;
-					oldNum = 0;
+					oldNum = nullptr;
 				}
                                 o->EquatorialToHorizontal( ks->LST(), ks->data()->geo()->lat() );
 
diff --git a/kstars/kstars/tools/altvstime.h b/kstars/kstars/tools/altvstime.h
index 952d9bea..3b1ed4af 100644
--- a/kstars/kstars/tools/altvstime.h
+++ b/kstars/kstars/tools/altvstime.h
@@ -52,7 +52,7 @@ class AVTPlotWidget : public KStarsPlotWidget
 public:
 /**Constructor
 	*/
-	AVTPlotWidget( double x1=0.0, double x2=1.0, double y1=0.0, double y2=1.0, TQWidget *parent=0, const char* name=0 );
+	AVTPlotWidget( double x1=0.0, double x2=1.0, double y1=0.0, double y2=1.0, TQWidget *parent=nullptr, const char* name=nullptr );
 
 /**Set the fractional positions of the Sunrise and Sunset positions, 
 	*in units where last midnight was 0.0, and next midnight is 1.0.  
@@ -99,7 +99,7 @@ class AltVsTime : public KDialogBase
 public:
 /**Constructor
 	*/
-	AltVsTime( TQWidget* parent = 0);
+	AltVsTime( TQWidget* parent = nullptr);
 	
 /**Destructor
 	*/
diff --git a/kstars/kstars/tools/astrocalc.cpp b/kstars/kstars/tools/astrocalc.cpp
index 7ff8e73a..d827bb78 100644
--- a/kstars/kstars/tools/astrocalc.cpp
+++ b/kstars/kstars/tools/astrocalc.cpp
@@ -40,9 +40,9 @@
 
 AstroCalc::AstroCalc( TQWidget* parent ) :
 	KDialogBase( parent, "starscalculator", true, i18n("Calculator"), Close ),
-	JDFrame(0), GeodCoordFrame(0), GalFrame(0), SidFrame(0), PrecFrame(0),
-	AppFrame(0), DayFrame(0), AzelFrame(0), PlanetsFrame(0), EquinoxFrame(0),
-	EclFrame(0), AngDistFrame(0)
+	JDFrame(nullptr), GeodCoordFrame(nullptr), GalFrame(nullptr), SidFrame(nullptr), PrecFrame(nullptr),
+	AppFrame(nullptr), DayFrame(nullptr), AzelFrame(nullptr), PlanetsFrame(nullptr), EquinoxFrame(nullptr),
+	EclFrame(nullptr), AngDistFrame(nullptr)
 {
 	split = new TQSplitter ( this );
 	setMainWidget(split);
@@ -104,7 +104,7 @@ void AstroCalc::slotItemSelection(TQListViewItem *item)
 {
 	TQString election;
 
-	if (item==0L) return;
+	if (!item) return;
 
 	election = item->text(0);
 	if(!(election.compare(i18n("Time Calculators"))))
diff --git a/kstars/kstars/tools/astrocalc.h b/kstars/kstars/tools/astrocalc.h
index ebb70d4c..398632b8 100644
--- a/kstars/kstars/tools/astrocalc.h
+++ b/kstars/kstars/tools/astrocalc.h
@@ -60,7 +60,7 @@ TQ_OBJECT
 
 	public:
     /** construtor */
-	AstroCalc(TQWidget *parent = 0);
+	AstroCalc(TQWidget *parent = nullptr);
 
     /** destructor */
 	~AstroCalc();
diff --git a/kstars/kstars/tools/jmoontool.h b/kstars/kstars/tools/jmoontool.h
index 0b3d9f29..cc0b0903 100644
--- a/kstars/kstars/tools/jmoontool.h
+++ b/kstars/kstars/tools/jmoontool.h
@@ -32,7 +32,7 @@ class JMoonTool : public KDialogBase
 TQ_OBJECT
   
 public:
-	JMoonTool(TQWidget *parent = 0, const char *name = 0);
+	JMoonTool(TQWidget *parent = nullptr, const char *name = nullptr);
 	~JMoonTool();
 
 protected:
diff --git a/kstars/kstars/tools/kstarsplotwidget.h b/kstars/kstars/tools/kstarsplotwidget.h
index 29ce890e..d0773a4d 100644
--- a/kstars/kstars/tools/kstarsplotwidget.h
+++ b/kstars/kstars/tools/kstarsplotwidget.h
@@ -42,7 +42,7 @@ class KStarsPlotWidget : public KPlotWidget {
 public:
 /**Constructor
 	*/
-	KStarsPlotWidget( double x1=0.0, double x2=1.0, double y1=0.0, double y2=1.0, TQWidget *parent=0, const char* name=0 );
+	KStarsPlotWidget( double x1=0.0, double x2=1.0, double y1=0.0, double y2=1.0, TQWidget *parent=nullptr, const char* name=nullptr );
 
 /**Destructor (empty)
 	*/
diff --git a/kstars/kstars/tools/lcgenerator.cpp b/kstars/kstars/tools/lcgenerator.cpp
index 63cd0720..305dfdce 100644
--- a/kstars/kstars/tools/lcgenerator.cpp
+++ b/kstars/kstars/tools/lcgenerator.cpp
@@ -46,7 +46,7 @@ LCGenerator::LCGenerator( TQWidget* parent)
   ksw = (KStars*) parent;
   createGUI();
   
-  downloadJob = 0;
+  downloadJob = nullptr;
   
   file = new TQFile();
 }
@@ -65,7 +65,7 @@ void LCGenerator::createGUI()
     
     LCGeneratorDialogLayout = new TQVBoxLayout( page, 11, 6, "LCGeneratorDialogLayout"); 
 
-    SDLayout = new TQHBoxLayout( 0, 0, 6, "SDLayout"); 
+    SDLayout = new TQHBoxLayout( nullptr, 0, 6, "SDLayout"); 
 
     StarInfoBox = new TQGroupBox( page, "StarInfoBox" );
     StarInfoBox->setColumnLayout(0, TQt::Vertical );
@@ -74,7 +74,7 @@ void LCGenerator::createGUI()
     StarInfoBoxLayout = new TQVBoxLayout( StarInfoBox->layout() );
     StarInfoBoxLayout->setAlignment( TQt::AlignTop );
 
-    DesignHLayout = new TQHBoxLayout( 0, 0, 6, "DesignHLayout"); 
+    DesignHLayout = new TQHBoxLayout( nullptr, 0, 6, "DesignHLayout"); 
 
     desigLabel = new TQLabel( StarInfoBox, "desigLabel" );
     desigLabel->setMinimumSize( TQSize( 70, 0 ) );
@@ -88,7 +88,7 @@ void LCGenerator::createGUI()
     for (uint i=0; i< (ksw->data()->VariableStarsList.count()); i++)
      DesignationIn->insertItem(ksw->data()->VariableStarsList.at(i)->Designation);
 
-    NameHLayout = new TQHBoxLayout( 0, 0, 6, "NameHLayout"); 
+    NameHLayout = new TQHBoxLayout( nullptr, 0, 6, "NameHLayout"); 
 
     nameLabel = new TQLabel( StarInfoBox, "nameLabel" );
     nameLabel->setMinimumSize( TQSize( 70, 0 ) );
@@ -102,7 +102,7 @@ void LCGenerator::createGUI()
     for (uint i=0; i<ksw->data()->VariableStarsList.count(); i++)
      NameIn->insertItem(ksw->data()->VariableStarsList.at(i)->Name);
 
-    StartHLayout = new TQHBoxLayout( 0, 0, 6, "StartHLayout"); 
+    StartHLayout = new TQHBoxLayout( nullptr, 0, 6, "StartHLayout"); 
 
     startLabel = new TQLabel( StarInfoBox, "startLabel" );
     startLabel->setMinimumSize( TQSize( 70, 0 ) );
@@ -112,7 +112,7 @@ void LCGenerator::createGUI()
     StartHLayout->addWidget( StartDateIn );
     StarInfoBoxLayout->addLayout( StartHLayout );
 
-    EndHLayout = new TQHBoxLayout( 0, 0, 6, "EndHLayout"); 
+    EndHLayout = new TQHBoxLayout( nullptr, 0, 6, "EndHLayout"); 
 
     endLabel = new TQLabel( StarInfoBox, "endLabel" );
     endLabel->setMinimumSize( TQSize( 70, 0 ) );
@@ -157,7 +157,7 @@ void LCGenerator::createGUI()
     CCDICheck->setChecked( true );
     DataSelectBoxLayout->addWidget( CCDICheck );
 
-    PlotHLayout = new TQHBoxLayout( 0, 0, 6, "PlotHLayout"); 
+    PlotHLayout = new TQHBoxLayout( nullptr, 0, 6, "PlotHLayout"); 
 
     plotLabel = new TQLabel( DataSelectBox, "plotLabel" );
     PlotHLayout->addWidget( plotLabel );
@@ -171,7 +171,7 @@ void LCGenerator::createGUI()
     SDLayout->addWidget( DataSelectBox );
     LCGeneratorDialogLayout->addLayout( SDLayout );
 
-    ButtonHLayout = new TQHBoxLayout( 0, 0, 6, "ButtonHLayout"); 
+    ButtonHLayout = new TQHBoxLayout( nullptr, 0, 6, "ButtonHLayout"); 
 
     GetCurveButton = new KPushButton( page, "GetCurveButton" );
     ButtonHLayout->addWidget( GetCurveButton );
@@ -433,12 +433,12 @@ void LCGenerator::updateStarList()
 void LCGenerator::downloadReady(TDEIO::Job * job)
 {
 
-downloadJob = 0;
+downloadJob = nullptr;
 
 	if ( job->error() )
 	{
 		job->showErrorDialog();
-		closeEvent (0);
+		closeEvent (nullptr);
 		return;		// exit this function
 	}
 
@@ -464,7 +464,7 @@ downloadJob = 0;
 		
 		return;
 	}
-	closeEvent (0);
+	closeEvent (nullptr);
 
 }
 
diff --git a/kstars/kstars/tools/lcgenerator.h b/kstars/kstars/tools/lcgenerator.h
index f74d46b0..6d1c4ada 100644
--- a/kstars/kstars/tools/lcgenerator.h
+++ b/kstars/kstars/tools/lcgenerator.h
@@ -60,7 +60,7 @@ public:
 /**Constructor 
 	*@p parent pointer to the parent widget
 	*/
-	LCGenerator( TQWidget* parent = 0);
+	LCGenerator( TQWidget* parent = nullptr);
 /**Destructor */
 	~LCGenerator();
 
diff --git a/kstars/kstars/tools/modcalcangdist.cpp b/kstars/kstars/tools/modcalcangdist.cpp
index 7c9185e2..88e4f1f4 100644
--- a/kstars/kstars/tools/modcalcangdist.cpp
+++ b/kstars/kstars/tools/modcalcangdist.cpp
@@ -99,7 +99,7 @@ void modCalcAngDist::slotRunBatch() {
 		TQFile f( inputFileName );
 		if ( !f.open( IO_ReadOnly) ) {
 			TQString message = i18n( "Could not open file %1.").arg( f.name() );
-			KMessageBox::sorry( 0, message, i18n( "Could Not Open File" ) );
+			KMessageBox::sorry( nullptr, message, i18n( "Could Not Open File" ) );
 			inputFileName = "";
 			return;
 		}
@@ -111,7 +111,7 @@ void modCalcAngDist::slotRunBatch() {
 		f.close();
 	} else  {
 		TQString message = i18n( "Invalid file: %1" ).arg( inputFileName );
-		KMessageBox::sorry( 0, message, i18n( "Invalid file" ) );
+		KMessageBox::sorry( nullptr, message, i18n( "Invalid file" ) );
 		inputFileName = "";
 		InputLineEditBatch->setText( inputFileName );
 		return;
diff --git a/kstars/kstars/tools/modcalcapcoord.cpp b/kstars/kstars/tools/modcalcapcoord.cpp
index 0b718ef3..55b3aa90 100644
--- a/kstars/kstars/tools/modcalcapcoord.cpp
+++ b/kstars/kstars/tools/modcalcapcoord.cpp
@@ -183,7 +183,7 @@ void modCalcApCoord::slotRunBatch() {
 		TQFile f( inputFileName );
 		if ( !f.open( IO_ReadOnly) ) {
 			TQString message = i18n( "Could not open file %1.").arg( f.name() );
-			KMessageBox::sorry( 0, message, i18n( "Could Not Open File" ) );
+			KMessageBox::sorry( nullptr, message, i18n( "Could Not Open File" ) );
 			inputFileName = "";
 			return;
 		}
@@ -195,7 +195,7 @@ void modCalcApCoord::slotRunBatch() {
 		f.close();
 	} else  {
 		TQString message = i18n( "Invalid file: %1" ).arg( inputFileName );
-		KMessageBox::sorry( 0, message, i18n( "Invalid file" ) );
+		KMessageBox::sorry( nullptr, message, i18n( "Invalid file" ) );
 		inputFileName = "";
 		InputLineEditBatch->setText( inputFileName );
 		return;
diff --git a/kstars/kstars/tools/modcalcazel.cpp b/kstars/kstars/tools/modcalcazel.cpp
index 0d7cfcbe..0199c94d 100644
--- a/kstars/kstars/tools/modcalcazel.cpp
+++ b/kstars/kstars/tools/modcalcazel.cpp
@@ -329,7 +329,7 @@ void modCalcAzel::slotRunBatch() {
 		TQFile f( inputFileName );
 		if ( !f.open( IO_ReadOnly) ) {
 			TQString message = i18n( "Could not open file %1.").arg( f.name() );
-			KMessageBox::sorry( 0, message, i18n( "Could Not Open File" ) );
+			KMessageBox::sorry( nullptr, message, i18n( "Could Not Open File" ) );
 			inputFileName = "";
 			return;
 		}
@@ -341,7 +341,7 @@ void modCalcAzel::slotRunBatch() {
 		f.close();
 	} else  {
 		TQString message = i18n( "Invalid file: %1" ).arg( inputFileName );
-		KMessageBox::sorry( 0, message, i18n( "Invalid file" ) );
+		KMessageBox::sorry( nullptr, message, i18n( "Invalid file" ) );
 		inputFileName = "";
 		InputLineEditBatch->setText( inputFileName );
 		return;
diff --git a/kstars/kstars/tools/modcalceclipticcoords.cpp b/kstars/kstars/tools/modcalceclipticcoords.cpp
index f3b88036..e3077fe0 100644
--- a/kstars/kstars/tools/modcalceclipticcoords.cpp
+++ b/kstars/kstars/tools/modcalceclipticcoords.cpp
@@ -224,7 +224,7 @@ void modCalcEclCoords::slotRunBatch() {
 		TQFile f( inputFileName );
 		if ( !f.open( IO_ReadOnly) ) {
 			TQString message = i18n( "Could not open file %1.").arg( f.name() );
-			KMessageBox::sorry( 0, message, i18n( "Could Not Open File" ) );
+			KMessageBox::sorry( nullptr, message, i18n( "Could Not Open File" ) );
 			inputFileName = "";
 			return;
 		}
@@ -236,7 +236,7 @@ void modCalcEclCoords::slotRunBatch() {
 		f.close();
 	} else  {
 		TQString message = i18n( "Invalid file: %1" ).arg( inputFileName );
-		KMessageBox::sorry( 0, message, i18n( "Invalid file" ) );
+		KMessageBox::sorry( nullptr, message, i18n( "Invalid file" ) );
 		inputFileName = "";
 		InputLineEditBatch->setText( inputFileName );
 		return;
diff --git a/kstars/kstars/tools/modcalcequinox.cpp b/kstars/kstars/tools/modcalcequinox.cpp
index 3f72a1fe..08964470 100644
--- a/kstars/kstars/tools/modcalcequinox.cpp
+++ b/kstars/kstars/tools/modcalcequinox.cpp
@@ -139,7 +139,7 @@ void modCalcEquinox::slotRunBatch() {
 		TQFile f( inputFileName );
 		if ( !f.open( IO_ReadOnly) ) {
 			TQString message = i18n( "Could not open file %1.").arg( f.name() );
-			KMessageBox::sorry( 0, message, i18n( "Could Not Open File" ) );
+			KMessageBox::sorry( nullptr, message, i18n( "Could Not Open File" ) );
 			inputFileName = "";
 			return;
 		}
@@ -151,7 +151,7 @@ void modCalcEquinox::slotRunBatch() {
 		f.close();
 	} else  {
 		TQString message = i18n( "Invalid file: %1" ).arg( inputFileName );
-		KMessageBox::sorry( 0, message, i18n( "Invalid file" ) );
+		KMessageBox::sorry( nullptr, message, i18n( "Invalid file" ) );
 		inputFileName = "";
 		InputLineEditBatch->setText( inputFileName );
 		return;
diff --git a/kstars/kstars/tools/modcalcgalcoord.cpp b/kstars/kstars/tools/modcalcgalcoord.cpp
index 6ed71bb3..1014d73d 100644
--- a/kstars/kstars/tools/modcalcgalcoord.cpp
+++ b/kstars/kstars/tools/modcalcgalcoord.cpp
@@ -226,7 +226,7 @@ void modCalcGalCoord::slotRunBatch() {
 		TQFile f( inputFileName );
 		if ( !f.open( IO_ReadOnly) ) {
 			TQString message = i18n( "Could not open file %1.").arg( f.name() );
-			KMessageBox::sorry( 0, message, i18n( "Could Not Open File" ) );
+			KMessageBox::sorry( nullptr, message, i18n( "Could Not Open File" ) );
 			inputFileName = "";
 			return;
 		}
@@ -238,7 +238,7 @@ void modCalcGalCoord::slotRunBatch() {
 		f.close();
 	} else  {
 		TQString message = i18n( "Invalid file: %1" ).arg( inputFileName );
-		KMessageBox::sorry( 0, message, i18n( "Invalid file" ) );
+		KMessageBox::sorry( nullptr, message, i18n( "Invalid file" ) );
 		inputFileName = "";
 		InputLineEditBatch->setText( inputFileName );
 		return;
diff --git a/kstars/kstars/tools/modcalcgeodcoord.cpp b/kstars/kstars/tools/modcalcgeodcoord.cpp
index c9dd1e05..936eb58c 100644
--- a/kstars/kstars/tools/modcalcgeodcoord.cpp
+++ b/kstars/kstars/tools/modcalcgeodcoord.cpp
@@ -237,7 +237,7 @@ void modCalcGeodCoord::slotRunBatch(void) {
 		TQFile f( inputFileName );
 		if ( !f.open( IO_ReadOnly) ) {
 			TQString message = i18n( "Could not open file %1.").arg( f.name() );
-			KMessageBox::sorry( 0, message, i18n( "Could Not Open File" ) );
+			KMessageBox::sorry( nullptr, message, i18n( "Could Not Open File" ) );
 			inputFileName = "";
 			return;
 		}
@@ -249,7 +249,7 @@ void modCalcGeodCoord::slotRunBatch(void) {
 		f.close();
 	} else  {
 		TQString message = i18n( "Invalid file: %1" ).arg( inputFileName );
-		KMessageBox::sorry( 0, message, i18n( "Invalid file" ) );
+		KMessageBox::sorry( nullptr, message, i18n( "Invalid file" ) );
 		inputFileName = "";
 		InputLineEditBatch->setText( inputFileName );
 		return;
diff --git a/kstars/kstars/tools/modcalcplanets.cpp b/kstars/kstars/tools/modcalcplanets.cpp
index 474fda8a..75a0d006 100644
--- a/kstars/kstars/tools/modcalcplanets.cpp
+++ b/kstars/kstars/tools/modcalcplanets.cpp
@@ -311,7 +311,7 @@ void modCalcPlanets::slotRunBatch() {
 		TQFile f( inputFileName );
 		if ( !f.open( IO_ReadOnly) ) {
 			TQString message = i18n( "Could not open file %1.").arg( f.name() );
-			KMessageBox::sorry( 0, message, i18n( "Could Not Open File" ) );
+			KMessageBox::sorry( nullptr, message, i18n( "Could Not Open File" ) );
 			inputFileName = "";
 			return;
 		}
@@ -321,7 +321,7 @@ void modCalcPlanets::slotRunBatch() {
 		f.close();
 	} else  {
 		TQString message = i18n( "Invalid file: %1" ).arg( inputFileName );
-		KMessageBox::sorry( 0, message, i18n( "Invalid file" ) );
+		KMessageBox::sorry( nullptr, message, i18n( "Invalid file" ) );
 		inputFileName = "";
 		InputLineEditBatch->setText( inputFileName );
 		return;
@@ -584,7 +584,7 @@ void modCalcPlanets::processLines( TQTextStream &istream ) {
 
 	if (!lineIsValid) { 
 		TQString message = i18n("Errors found while parsing some lines in the input file");
-		KMessageBox::sorry( 0, message, i18n( "Errors in lines" ) );
+		KMessageBox::sorry( nullptr, message, i18n( "Errors in lines" ) );
 	}
 
 	fOut.close();
diff --git a/kstars/kstars/tools/modcalcprec.cpp b/kstars/kstars/tools/modcalcprec.cpp
index efa7de5c..3eb918da 100644
--- a/kstars/kstars/tools/modcalcprec.cpp
+++ b/kstars/kstars/tools/modcalcprec.cpp
@@ -177,7 +177,7 @@ void modCalcPrec::slotRunBatch() {
 		TQFile f( inputFileName );
 		if ( !f.open( IO_ReadOnly) ) {
 			TQString message = i18n( "Could not open file %1.").arg( f.name() );
-			KMessageBox::sorry( 0, message, i18n( "Could Not Open File" ) );
+			KMessageBox::sorry( nullptr, message, i18n( "Could Not Open File" ) );
 			inputFileName = "";
 			return;
 		}
@@ -189,7 +189,7 @@ void modCalcPrec::slotRunBatch() {
 		f.close();
 	} else  {
 		TQString message = i18n( "Invalid file: %1" ).arg( inputFileName );
-		KMessageBox::sorry( 0, message, i18n( "Invalid file" ) );
+		KMessageBox::sorry( nullptr, message, i18n( "Invalid file" ) );
 		inputFileName = "";
 		InputLineEditBatch->setText( inputFileName );
 		return;
diff --git a/kstars/kstars/tools/modcalcsidtime.cpp b/kstars/kstars/tools/modcalcsidtime.cpp
index aa7ad586..d3766396 100644
--- a/kstars/kstars/tools/modcalcsidtime.cpp
+++ b/kstars/kstars/tools/modcalcsidtime.cpp
@@ -193,7 +193,7 @@ void modCalcSidTime::slotRunBatch() {
 		TQFile f( inputFileName );
 		if ( !f.open( IO_ReadOnly) ) {
 			TQString message = i18n( "Could not open file %1.").arg( f.name() );
-			KMessageBox::sorry( 0, message, i18n( "Could Not Open File" ) );
+			KMessageBox::sorry( nullptr, message, i18n( "Could Not Open File" ) );
 			inputFileName = "";
 			return;
 		}
@@ -205,7 +205,7 @@ void modCalcSidTime::slotRunBatch() {
 		f.close();
 	} else  {
 		TQString message = i18n( "Invalid file: %1" ).arg( inputFileName );
-		KMessageBox::sorry( 0, message, i18n( "Invalid file" ) );
+		KMessageBox::sorry( nullptr, message, i18n( "Invalid file" ) );
 		inputFileName = "";
 		InputLineEditBatch->setText( inputFileName );
 		return;
diff --git a/kstars/kstars/tools/modcalcvlsr.cpp b/kstars/kstars/tools/modcalcvlsr.cpp
index d69a143a..8920b452 100644
--- a/kstars/kstars/tools/modcalcvlsr.cpp
+++ b/kstars/kstars/tools/modcalcvlsr.cpp
@@ -374,7 +374,7 @@ void modCalcVlsr::slotRunBatch() {
 		TQFile f( inputFileName );
 		if ( !f.open( IO_ReadOnly) ) {
 			TQString message = i18n( "Could not open file %1.").arg( f.name() );
-			KMessageBox::sorry( 0, message, i18n( "Could Not Open File" ) );
+			KMessageBox::sorry( nullptr, message, i18n( "Could Not Open File" ) );
 			inputFileName = "";
 			return;
 		}
@@ -386,7 +386,7 @@ void modCalcVlsr::slotRunBatch() {
 		f.close();
 	} else  {
 		TQString message = i18n( "Invalid file: %1" ).arg( inputFileName );
-		KMessageBox::sorry( 0, message, i18n( "Invalid file" ) );
+		KMessageBox::sorry( nullptr, message, i18n( "Invalid file" ) );
 		inputFileName = "";
 		InputLineEditBatch->setText( inputFileName );
 		return;
diff --git a/kstars/kstars/tools/observinglist.cpp b/kstars/kstars/tools/observinglist.cpp
index ee2f3ee1..ef340497 100644
--- a/kstars/kstars/tools/observinglist.cpp
+++ b/kstars/kstars/tools/observinglist.cpp
@@ -55,7 +55,7 @@
 
 ObservingList::ObservingList( KStars *_ks, TQWidget* parent )
 		: KDialogBase( KDialogBase::Plain, i18n( "Observing List" ),
-				Close, Close, parent, "observinglist", false ), ks( _ks ), LogObject(0), oCurrent(0),
+				Close, Close, parent, "observinglist", false ), ks( _ks ), LogObject(nullptr), oCurrent(nullptr),
 				noNameStars(0), isModified(false), bIsLarge(true)
 {
 	TQFrame *page = plainPage();
@@ -307,7 +307,7 @@ void ObservingList::slotNewSelection() {
 		ui->RemoveButton->setEnabled( false );
 		ui->NotesLabel->setEnabled( false );
 		ui->NotesEdit->setEnabled( false );
-		oCurrent = 0;
+		oCurrent = nullptr;
 
 		//Clear the user log text box.
 		saveCurrentUserLog();
@@ -319,7 +319,7 @@ void ObservingList::slotNewSelection() {
 		ui->RemoveButton->setEnabled( true );
 		ui->NotesLabel->setEnabled( false );
 		ui->NotesEdit->setEnabled( false );
-		oCurrent = 0;
+		oCurrent = nullptr;
 
 		//Clear the user log text box.
 		saveCurrentUserLog();
@@ -378,7 +378,7 @@ void ObservingList::slotSlewToObject()
 
        if (ConnectEle->state == PS_OFF)
        {
-	 KMessageBox::error(0, i18n("Telescope %1 is offline. Please connect and retry again.").arg(indidev->label));
+	 KMessageBox::error(nullptr, i18n("Telescope %1 is offline. Please connect and retry again.").arg(indidev->label));
 	 return;
        }
 
@@ -462,7 +462,7 @@ void ObservingList::slotSlewToObject()
   }
 
   // We didn't find any telescopes
-  KMessageBox::sorry(0, i18n("KStars did not find any active telescopes."));
+  KMessageBox::sorry(nullptr, i18n("KStars did not find any active telescopes."));
 
 }
 
@@ -529,7 +529,7 @@ void ObservingList::slotOpenList() {
 
 		if ( !f.open( IO_ReadOnly) ) {
 			TQString message = i18n( "Could not open file %1" ).arg( f.name() );
-			KMessageBox::sorry( 0, message, i18n( "Could Not Open File" ) );
+			KMessageBox::sorry( nullptr, message, i18n( "Could Not Open File" ) );
 			return;
 		}
 
@@ -546,7 +546,7 @@ void ObservingList::slotOpenList() {
 			kdDebug() << line << endl;
 
 			//If the object is named "star", add it by coordinates
-			SkyObject *o = 0;
+			SkyObject *o = nullptr;
 			if ( line.startsWith( "star" ) ) {
 				TQStringList fields = TQStringList::split( " ", line );
 				//DEBUG
@@ -629,7 +629,7 @@ void ObservingList::slotSaveList() {
 	if ( !f.open( IO_WriteOnly) ) {
 		TQString message = i18n( "Could not open file %1.  Try a different filename?" ).arg( f.name() );
 
-		if ( KMessageBox::warningYesNo( 0, message, i18n( "Could Not Open File" ), i18n("Try Different"), i18n("Do Not Try") ) == KMessageBox::Yes ) {
+		if ( KMessageBox::warningYesNo( nullptr, message, i18n( "Could Not Open File" ), i18n("Try Different"), i18n("Do Not Try") ) == KMessageBox::Yes ) {
 			FileName == "";
 			slotSaveList();
 		}
diff --git a/kstars/kstars/tools/observinglist.h b/kstars/kstars/tools/observinglist.h
index 1e17b466..c6eaa582 100644
--- a/kstars/kstars/tools/observinglist.h
+++ b/kstars/kstars/tools/observinglist.h
@@ -63,7 +63,7 @@ class ObservingList : public KDialogBase
 public:
 /**@short Cunstructor
 	*/
-	ObservingList( KStars *_ks, TQWidget* parent = 0 );
+	ObservingList( KStars *_ks, TQWidget* parent = nullptr );
 /**@short Destuctor (empty)
 	*/
 	~ObservingList() {}
diff --git a/kstars/kstars/tools/obslistwizard.h b/kstars/kstars/tools/obslistwizard.h
index ca6ca609..41d8cf29 100644
--- a/kstars/kstars/tools/obslistwizard.h
+++ b/kstars/kstars/tools/obslistwizard.h
@@ -35,7 +35,7 @@ class ObsListWizard : public KDialogBase
 	public:
 	/**@short Constructor
 		*/
-		ObsListWizard( TQWidget *parent = 0, const char *name = 0 );
+		ObsListWizard( TQWidget *parent = nullptr, const char *name = nullptr );
 	/**@short Destructor
 		*/
 		~ObsListWizard();
diff --git a/kstars/kstars/tools/planetviewer.cpp b/kstars/kstars/tools/planetviewer.cpp
index 178a0722..dab938fc 100644
--- a/kstars/kstars/tools/planetviewer.cpp
+++ b/kstars/kstars/tools/planetviewer.cpp
@@ -70,7 +70,7 @@ PlanetViewer::PlanetViewer(TQWidget *parent, const char *name)
 	PCat.initialize();
 	ut = ((KStars*)parent)->data()->ut();
 	KSNumbers num( ut.djd() );
-	PCat.findPosition( &num, 0, 0 ); //NULL args: don't need geocent. coords.
+	PCat.findPosition( &num, nullptr, nullptr ); //NULL args: don't need geocent. coords.
 	
 	for ( uint i=0; i<9; ++i ) 
 		LastUpdate[i] = int( ut.date().jd() );
diff --git a/kstars/kstars/tools/planetviewer.h b/kstars/kstars/tools/planetviewer.h
index 315621e0..e1b21a30 100644
--- a/kstars/kstars/tools/planetviewer.h
+++ b/kstars/kstars/tools/planetviewer.h
@@ -36,7 +36,7 @@ class PlanetViewer : public KDialogBase
 TQ_OBJECT
   
 public:
-	PlanetViewer(TQWidget *parent = 0, const char *name = 0);
+	PlanetViewer(TQWidget *parent = nullptr, const char *name = nullptr);
 	~PlanetViewer();
 
 	TQString centerPlanet() const { return CenterPlanet; }
@@ -81,8 +81,8 @@ TQ_OBJECT
   
 public:
 	PVPlotWidget( double x1, double x2, double y1, double y2, 
-			TQWidget *parent=0, const char *name=0 );
-	PVPlotWidget( TQWidget *parent=0, const char *name=0 );
+			TQWidget *parent=nullptr, const char *name=nullptr );
+	PVPlotWidget( TQWidget *parent=nullptr, const char *name=nullptr );
 	~PVPlotWidget();
 
 public slots:
diff --git a/kstars/kstars/tools/scriptbuilder.cpp b/kstars/kstars/tools/scriptbuilder.cpp
index 1b19e1cd..da100a5c 100644
--- a/kstars/kstars/tools/scriptbuilder.cpp
+++ b/kstars/kstars/tools/scriptbuilder.cpp
@@ -753,14 +753,14 @@ void ScriptBuilder::slotOpen() {
 				fname = currentFileURL.path();
 			} else {
 				fname = tmpfile.name();
-				if ( ! TDEIO::NetAccess::download( currentFileURL, fname, (TQWidget*) 0 ) )
-					KMessageBox::sorry( 0, i18n( "Could not download remote file." ), i18n( "Download Error" ) );
+				if ( ! TDEIO::NetAccess::download( currentFileURL, fname, (TQWidget*) nullptr ) )
+					KMessageBox::sorry( nullptr, i18n( "Could not download remote file." ), i18n( "Download Error" ) );
 			}
 
 			TQFile f( fname );
 			if ( !f.open( IO_ReadOnly) ) {
 				TQString message = i18n( "Could not open file %1." ).arg( f.name() );
-				KMessageBox::sorry( 0, message, i18n( "Could Not Open File" ) );
+				KMessageBox::sorry( nullptr, message, i18n( "Could Not Open File" ) );
 				currentFileURL = "";
 				return;
 			}
@@ -771,7 +771,7 @@ void ScriptBuilder::slotOpen() {
 			f.close();
 		} else if ( ! currentFileURL.url().isEmpty() ) {
 			TQString message = i18n( "Invalid URL: %1" ).arg( currentFileURL.url() );
-			KMessageBox::sorry( 0, message, i18n( "Invalid URL" ) );
+			KMessageBox::sorry( nullptr, message, i18n( "Invalid URL" ) );
 			currentFileURL = "";
 		}
 	}
@@ -820,7 +820,7 @@ void ScriptBuilder::slotSave() {
 		TQFile f( fname );
 		if ( !f.open( IO_WriteOnly) ) {
 			TQString message = i18n( "Could not open file %1." ).arg( f.name() );
-			KMessageBox::sorry( 0, message, i18n( "Could Not Open File" ) );
+			KMessageBox::sorry( nullptr, message, i18n( "Could Not Open File" ) );
 			currentFileURL = "";
 			return;
 		}
@@ -833,9 +833,9 @@ void ScriptBuilder::slotSave() {
 		chmod( fname.ascii(), S_IRUSR|S_IWUSR|S_IXUSR|S_IRGRP|S_IXGRP|S_IROTH|S_IXOTH );
 
 		if ( tmpfile.name() == fname ) { //need to upload to remote location
-			if ( ! TDEIO::NetAccess::upload( tmpfile.name(), currentFileURL, (TQWidget*) 0 ) ) {
+			if ( ! TDEIO::NetAccess::upload( tmpfile.name(), currentFileURL, (TQWidget*) nullptr ) ) {
 				TQString message = i18n( "Could not upload image to remote location: %1" ).arg( currentFileURL.prettyURL() );
-				KMessageBox::sorry( 0, message, i18n( "Could not upload file" ) );
+				KMessageBox::sorry( nullptr, message, i18n( "Could not upload file" ) );
 			}
 		}
 
@@ -843,7 +843,7 @@ void ScriptBuilder::slotSave() {
 
 	} else {
 		TQString message = i18n( "Invalid URL: %1" ).arg( currentFileURL.url() );
-		KMessageBox::sorry( 0, message, i18n( "Invalid URL" ) );
+		KMessageBox::sorry( nullptr, message, i18n( "Invalid URL" ) );
 		currentFileURL = "";
 	}
 }
@@ -858,7 +858,7 @@ void ScriptBuilder::saveWarning() {
 	if ( UnsavedChanges ) {
 		TQString caption = i18n( "Save Changes to Script?" );
 		TQString message = i18n( "The current script has unsaved changes.  Would you like to save before closing it?" );
-		int ans = KMessageBox::warningYesNoCancel( 0, message, caption, KStdGuiItem::save(), KStdGuiItem::discard() );
+		int ans = KMessageBox::warningYesNoCancel( nullptr, message, caption, KStdGuiItem::save(), KStdGuiItem::discard() );
 		if ( ans == KMessageBox::Yes ) {
 			slotSave();
 			setUnsavedChanges( false );
@@ -886,7 +886,7 @@ void ScriptBuilder::slotRunScript() {
 	if ( f.exists() ) f.remove();
 	if ( !f.open( IO_WriteOnly) ) {
 		TQString message = i18n( "Could not open file %1." ).arg( f.name() );
-		KMessageBox::sorry( 0, message, i18n( "Could Not Open File" ) );
+		KMessageBox::sorry( nullptr, message, i18n( "Could Not Open File" ) );
 		currentFileURL = "";
 		return;
 	}
diff --git a/kstars/kstars/tools/scriptbuilder.h b/kstars/kstars/tools/scriptbuilder.h
index 3ae58b86..c07a25ef 100644
--- a/kstars/kstars/tools/scriptbuilder.h
+++ b/kstars/kstars/tools/scriptbuilder.h
@@ -70,7 +70,7 @@ class ScriptBuilder : public KDialogBase
 TQ_OBJECT
   
 public:
-	ScriptBuilder( TQWidget *parent, const char *name=0 );
+	ScriptBuilder( TQWidget *parent, const char *name=nullptr );
 	~ScriptBuilder();
 
 	bool unsavedChanges() const { return UnsavedChanges; }
diff --git a/kstars/kstars/tools/wutdialog.cpp b/kstars/kstars/tools/wutdialog.cpp
index d326ae06..dac61a6b 100644
--- a/kstars/kstars/tools/wutdialog.cpp
+++ b/kstars/kstars/tools/wutdialog.cpp
@@ -314,7 +314,7 @@ void WUTDialog::slotDisplayObject(TQListBoxItem *item) {
 	TQTime tRise, tSet, tTransit;
 	TQString sRise, sTransit, sSet;
 
-	if ( item==0 ) { //no object selected
+	if (!item) { //no object selected
 		WUT->ObjectBox->setTitle( i18n( "No Object Selected" ) );
 
 		sRise = "--:--";
@@ -358,12 +358,12 @@ void WUTDialog::slotDisplayObject(TQListBoxItem *item) {
 }
 
 void WUTDialog::slotCenter() {
-	SkyObject *o = 0;
+	SkyObject *o = nullptr;
 	// get selected item
-	if (WUT->ObjectListBox->selectedItem() != 0) {
+	if (WUT->ObjectListBox->selectedItem()) {
 		o = ((SkyObjectNameListItem*)WUT->ObjectListBox->selectedItem())->objName()->skyObject();
 	}
-	if (o != 0) {
+	if (o) {
 		kstars->map()->setFocusPoint( o );
 		kstars->map()->setFocusObject( o );
 		kstars->map()->setDestination( kstars->map()->focusPoint() );
@@ -371,12 +371,12 @@ void WUTDialog::slotCenter() {
 }
 
 void WUTDialog::slotDetails() {
-	SkyObject *o = 0;
+	SkyObject *o = nullptr;
 	// get selected item
-	if (WUT->ObjectListBox->selectedItem() != 0) {
+	if (WUT->ObjectListBox->selectedItem()) {
 		o = ((SkyObjectNameListItem*)WUT->ObjectListBox->selectedItem())->objName()->skyObject();
 	}
-	if (o != 0) {
+	if (o) {
 		DetailDialog detail(o, kstars->data()->LTime, geo, kstars);
 		detail.exec();
 	}
diff --git a/ktouch/src/ktouch.cpp b/ktouch/src/ktouch.cpp
index 0ecea288..2de6a290 100644
--- a/ktouch/src/ktouch.cpp
+++ b/ktouch/src/ktouch.cpp
@@ -59,7 +59,7 @@
 KTouch * KTouchPtr = nullptr;
 
 KTouch::KTouch()
-  : TDEMainWindow( 0, "KTouch" ),
+  : TDEMainWindow( nullptr, "KTouch" ),
     m_statusWidget(nullptr),
     m_keyboardWidget(nullptr),
 	m_trainer(nullptr)
@@ -423,13 +423,13 @@ void KTouch::optionsPreferences() {
 	if ( TDEConfigDialog::showDialog( "settings" ) )	return;
 	// TDEConfigDialog didn't find an instance of this dialog, so lets create it :
 	TDEConfigDialog* dialog = new TDEConfigDialog( this, "settings",  Prefs::self() );
-	m_pageGeneral = new KTouchPrefGeneralLayout(0, "General");
+	m_pageGeneral = new KTouchPrefGeneralLayout(nullptr, "General");
 	dialog->addPage(m_pageGeneral, i18n("General Options"), "style");
-	m_pageTraining = new KTouchPrefTrainingLayout(0, "Training");
+	m_pageTraining = new KTouchPrefTrainingLayout(nullptr, "Training");
 	dialog->addPage(m_pageTraining, i18n("Training Options"), "kalarm");
-	m_pageKeyboard = new KTouchPrefKeyboardLayout(0, "Keyboard");
+	m_pageKeyboard = new KTouchPrefKeyboardLayout(nullptr, "Keyboard");
 	dialog->addPage(m_pageKeyboard, i18n("Keyboard Settings"), "keyboard_layout");
-	m_pageColors = new KTouchPrefColorsLayout(0, "Colors"); 
+	m_pageColors = new KTouchPrefColorsLayout(nullptr, "Colors"); 
 	dialog->addPage(m_pageColors, i18n("Color Settings"), "applications-graphics");
 	connect(dialog, TQ_SIGNAL(settingsChanged()), this, TQ_SLOT(applyPreferences()));
 	// TODO : Connect some other buttons/check boxes of the dialog
@@ -489,7 +489,7 @@ void KTouch::changeLecture(int num) {
 	KTouchLecture l;
 	TQString fileName = m_lectureFiles[num];
     if (!l.loadXML(this, KURL::fromPathOrURL(fileName))) {
-        KMessageBox::sorry(0, i18n("Could not find/open the lecture file '%1'.").arg(fileName) );
+        KMessageBox::sorry(nullptr, i18n("Could not find/open the lecture file '%1'.").arg(fileName) );
     	m_defaultLectureAction->setCurrentItem(-1);
 	}
 	else {
@@ -702,7 +702,7 @@ void KTouch::setupActions() {
         this, TQ_SLOT(trainingStatistics()), actionCollection(), "training_stats");
  
     // Setup menu entries for the training lectures
-    m_defaultLectureAction = new TDESelectAction(i18n("Default &Lectures"), 0, this, 0, actionCollection(), "default_lectures");
+    m_defaultLectureAction = new TDESelectAction(i18n("Default &Lectures"), 0, this, nullptr, actionCollection(), "default_lectures");
 	m_defaultLectureAction->setMenuAccelsEnabled(false);
     m_defaultLectureAction->setItems(m_lectureTitles);
     m_defaultLectureAction->setCurrentItem(0);  
@@ -711,13 +711,13 @@ void KTouch::setupActions() {
 	// *** Settings menu ***    
     KStdAction::preferences(this, TQ_SLOT(optionsPreferences()), actionCollection());
     // Setup menu entries for keyboard layouts    
-    m_keyboardLayoutAction= new TDESelectAction(i18n("&Keyboard Layouts"), 0, this, 0, actionCollection(), "keyboard_layouts");
+    m_keyboardLayoutAction= new TDESelectAction(i18n("&Keyboard Layouts"), 0, this, nullptr, actionCollection(), "keyboard_layouts");
 	m_keyboardLayoutAction->setMenuAccelsEnabled(false);
     m_keyboardLayoutAction->setItems(m_keyboardTitles);
     connect (m_keyboardLayoutAction, TQ_SIGNAL(activated(int)), this, TQ_SLOT(changeKeyboard(int)));
 
 	// Setup menu entries for colour schemes
-	m_keyboardColorAction = new TDESelectAction(i18n("&Color Schemes"), 0, this, 0, actionCollection(), "keyboard_schemes");
+	m_keyboardColorAction = new TDESelectAction(i18n("&Color Schemes"), 0, this, nullptr, actionCollection(), "keyboard_schemes");
     TQStringList schemes_list;
     for (unsigned int i=0; i<KTouchColorScheme::m_colorSchemes.count(); ++i)
 		schemes_list.append(KTouchColorScheme::m_colorSchemes[i].m_name);
diff --git a/ktouch/src/ktouchchartwidget.h b/ktouch/src/ktouchchartwidget.h
index 9d40b660..84475a5d 100644
--- a/ktouch/src/ktouchchartwidget.h
+++ b/ktouch/src/ktouchchartwidget.h
@@ -27,7 +27,7 @@ class KTouchChartWidget : public KPlotWidget {
   
   public:
     /// Constructor.
-    KTouchChartWidget(TQWidget* parent, const char *name=0);
+    KTouchChartWidget(TQWidget* parent, const char *name=nullptr);
     /// Destructor.
     ~KTouchChartWidget();
 };
diff --git a/ktouch/src/ktouchcoloreditor.h b/ktouch/src/ktouchcoloreditor.h
index 731eb57a..064ec045 100644
--- a/ktouch/src/ktouchcoloreditor.h
+++ b/ktouch/src/ktouchcoloreditor.h
@@ -31,7 +31,7 @@ class KTouchColorEditor : public KTouchColorEditorDlg
 
 public:
 	/// Constructor
-	KTouchColorEditor(TQWidget* parent = 0, const char* name = 0, bool modal = false, WFlags fl = 0 );
+	KTouchColorEditor(TQWidget* parent = nullptr, const char* name = nullptr, bool modal = false, WFlags fl = 0 );
 	/// Destructor
 	~KTouchColorEditor();
 
diff --git a/ktouch/src/ktouchcolorscheme.cpp b/ktouch/src/ktouchcolorscheme.cpp
index faf47602..7d647e1d 100644
--- a/ktouch/src/ktouchcolorscheme.cpp
+++ b/ktouch/src/ktouchcolorscheme.cpp
@@ -190,7 +190,7 @@ bool KTouchColorScheme::writeList(TQWidget * window, const KURL& url) {
 
 	// and save it
     TQString tmp_file;
-    KTempFile *temp=0;
+    KTempFile *temp=nullptr;
     if (url.isLocalFile())
         tmp_file=url.path();         // for local files the path is sufficient
     else {
diff --git a/ktouch/src/ktouchkeyboardwidget.cpp b/ktouch/src/ktouchkeyboardwidget.cpp
index 8a1f933f..64217478 100644
--- a/ktouch/src/ktouchkeyboardwidget.cpp
+++ b/ktouch/src/ktouchkeyboardwidget.cpp
@@ -64,7 +64,7 @@ bool KTouchKeyboardWidget::loadKeyboard(TQWidget * window, const KURL& url, TQSt
 
 void KTouchKeyboardWidget::saveKeyboard(TQWidget * window, const KURL& url) {
     TQString tmpFile;
-    KTempFile *temp=0;
+    KTempFile *temp=nullptr;
     if (url.isLocalFile())
         tmpFile=url.path();             // for local files the path is sufficient
     else {
@@ -132,7 +132,7 @@ void KTouchKeyboardWidget::applyPreferences(TQWidget * window, bool silent) {
         else {
             TQString errorMsg;
             if (!loadKeyboard(window, KURL::fromPathOrURL( Prefs::currentKeyboardFile() ), &errorMsg)) {
-                KMessageBox::error( 0, i18n("Error reading the keyboard layout; the default number keypad will "
+                KMessageBox::error( nullptr, i18n("Error reading the keyboard layout; the default number keypad will "
                     "be created instead. You can choose another keyboard layout in the preferences dialog."),
                     errorMsg);
                 createDefaultKeyboard();
diff --git a/ktouch/src/ktouchlecture.cpp b/ktouch/src/ktouchlecture.cpp
index cb581475..8c5a55a5 100644
--- a/ktouch/src/ktouchlecture.cpp
+++ b/ktouch/src/ktouchlecture.cpp
@@ -71,7 +71,7 @@ bool KTouchLecture::saveXML(TQWidget * window, const KURL& url) const {
 
 	// and save it	
     TQString tmpFile;
-    KTempFile *temp=0;
+    KTempFile *temp=nullptr;
     if (url.isLocalFile())
         tmpFile=url.path();         // for local files the path is sufficient
     else {
diff --git a/ktouch/src/ktouchlectureeditor.cpp b/ktouch/src/ktouchlectureeditor.cpp
index 66f6aead..7190a22f 100644
--- a/ktouch/src/ktouchlectureeditor.cpp
+++ b/ktouch/src/ktouchlectureeditor.cpp
@@ -131,11 +131,11 @@ void KTouchLectureEditor::newSelection(TQListViewItem* item) {
     // now we need to find the level which has been selected
     TQListViewItem *i = levelListView->firstChild();
     unsigned int level=0;
-    while (i!=0 && i!=item) {
+    while (i && i != item) {
         i = i->nextSibling();
         ++level;
     };
-    if (i!=0) {
+    if (i) {
         m_currentItem = i;
         m_level = level;
         showCurrentLevel();
@@ -159,7 +159,7 @@ void KTouchLectureEditor::newSelection(TQListViewItem* item) {
 // -----------------------------------------------------------------------------
 
 void KTouchLectureEditor::newCharsChanged(const TQString& text) {
-    if (m_currentItem==0) return;  // shouldn't happen, but a little bit of paranoia...
+    if (!m_currentItem) return;  // shouldn't happen, but a little bit of paranoia...
     m_currentItem->setText(0, text);
     setModified();
 }
diff --git a/ktouch/src/ktouchlectureeditor.h b/ktouch/src/ktouchlectureeditor.h
index 972357e6..f8abb6d3 100644
--- a/ktouch/src/ktouchlectureeditor.h
+++ b/ktouch/src/ktouchlectureeditor.h
@@ -44,7 +44,7 @@ class KTouchLectureEditor : public KTouchLectureEditorDlg {
   
   public:
     /// Constructor
-    KTouchLectureEditor(TQWidget *parent, const char* name = 0, bool modal = false, WFlags fl = 0);
+    KTouchLectureEditor(TQWidget *parent, const char* name = nullptr, bool modal = false, WFlags fl = 0);
     /// Destructor
     ~KTouchLectureEditor() {}
     /// Shows and executes the dialog (argument is the url to the default or 
diff --git a/ktouch/src/ktouchopenrequest.h b/ktouch/src/ktouchopenrequest.h
index 849c157a..88883311 100644
--- a/ktouch/src/ktouchopenrequest.h
+++ b/ktouch/src/ktouchopenrequest.h
@@ -56,7 +56,7 @@ class KTouchOpenRequest : public KTouchOpenRequestDlg {
  
   public:
     /// Default constructor.
-    KTouchOpenRequest(TQWidget* parent = 0, const char* name = 0, bool modal = false, WFlags fl = 0 );
+    KTouchOpenRequest(TQWidget* parent = nullptr, const char* name = nullptr, bool modal = false, WFlags fl = 0 );
     /// Default destructor.
     ~KTouchOpenRequest() {}
     /// Sets up the dialog and runs it.
diff --git a/ktouch/src/ktouchstatisticsdata.cpp b/ktouch/src/ktouchstatisticsdata.cpp
index cf7c723b..8a8f5bfa 100644
--- a/ktouch/src/ktouchstatisticsdata.cpp
+++ b/ktouch/src/ktouchstatisticsdata.cpp
@@ -466,7 +466,7 @@ bool KTouchStatisticsData::write(TQWidget * window, const KURL& url) const {
 
 	// and save it
     TQString tmpFile;
-    KTempFile *temp=0;
+    KTempFile *temp=nullptr;
     if (url.isLocalFile())
         tmpFile=url.path();         // for local files the path is sufficient
     else {
diff --git a/ktouch/src/ktouchtrainer.cpp b/ktouch/src/ktouchtrainer.cpp
index 412c53e4..760df185 100644
--- a/ktouch/src/ktouchtrainer.cpp
+++ b/ktouch/src/ktouchtrainer.cpp
@@ -388,7 +388,7 @@ void KTouchTrainer::timerTick() {
 // *** Private functions ***
 
 void KTouchTrainer::levelAllComplete() {
-    TQMessageBox::information(0, i18n("You rock!"),
+    TQMessageBox::information(nullptr, i18n("You rock!"),
                    i18n("You have finished this training exercise.\n"
                       "This training session will start from the beginning."));
     statsChangeLevel();
diff --git a/ktouch/src/main.cpp b/ktouch/src/main.cpp
index 0e5ad898..0fb161a0 100644
--- a/ktouch/src/main.cpp
+++ b/ktouch/src/main.cpp
@@ -22,7 +22,7 @@ static const char description[] =
 static const char version[] = "1.5.3";
 
 static TDECmdLineOptions options[] = {
-    { "+[URL]", I18N_NOOP( "Training file to open" ), 0 },
+    { "+[URL]", I18N_NOOP( "Training file to open" ), nullptr },
     TDECmdLineLastOption
 };
 
@@ -34,18 +34,18 @@ int main(int argc, char **argv)
                      description,
                      TDEAboutData::License_GPL,
                      "Copyright (C) 2000-2006 by HÃ¥vard FrÃ¸iland and Andreas Nicolai",
-                     0,
+                     nullptr,
                      "http://edu.kde.org/ktouch",
                      "submit@bugs.trinitydesktop.org");
     about.addAuthor( "Andreas Nicolai", I18N_NOOP("Current maintainer and programmer"), "Andreas.Nicolai@gmx.net" );
     about.addAuthor( "HÃ¥vard FrÃ¸iland", I18N_NOOP("Original author, project admin"), "haavard@users.sourceforge.net" );
     about.addCredit( "David Vignoni", I18N_NOOP("Creator of the SVG icon"), "david80v@tin.it");
     about.addCredit( "Anne-Marie Mahfouf", I18N_NOOP("Lots of patches, fixes, updates"), "annma@kde.org");
-    about.addCredit( "All the creators of training and keyboard files", 0, 0);
+    about.addCredit( "All the creators of training and keyboard files", nullptr, nullptr);
     TDECmdLineArgs::init(argc, argv, &about);
     TDECmdLineArgs::addCmdLineOptions( options );
     TDEApplication app;
-    KTouch *mainWin = 0;
+    KTouch *mainWin = nullptr;
 
     if (app.isRestored()) {
         RESTORE(KTouch);
diff --git a/kturtle/src/canvas.cpp b/kturtle/src/canvas.cpp
index 8564d6ae..a07df586 100644
--- a/kturtle/src/canvas.cpp
+++ b/kturtle/src/canvas.cpp
@@ -75,7 +75,7 @@ const double DEG2RAD = 3.14159265358979323846/180;
 
 // BEGIN public methods
 
-Canvas::Canvas(TQWidget *parent, const char *name) : TQCanvasView(0, parent, name)
+Canvas::Canvas(TQWidget *parent, const char *name) : TQCanvasView(nullptr, parent, name)
 {
 	// Create a new canvas for this view
 	canvas = new TQCanvas(parent);
diff --git a/kturtle/src/canvas.h b/kturtle/src/canvas.h
index c2fb7c27..d5acd59e 100644
--- a/kturtle/src/canvas.h
+++ b/kturtle/src/canvas.h
@@ -28,7 +28,7 @@ class Canvas : public TQCanvasView
   
 
 	public:
-		Canvas(TQWidget *parent = 0, const char *name = 0);
+		Canvas(TQWidget *parent = nullptr, const char *name = nullptr);
 		~Canvas();
 		
 		TQPixmap* canvas2Pixmap();
diff --git a/kturtle/src/dialogs.cpp b/kturtle/src/dialogs.cpp
index 0499b7db..4b181d4e 100644
--- a/kturtle/src/dialogs.cpp
+++ b/kturtle/src/dialogs.cpp
@@ -26,7 +26,7 @@
 // BEGIN class ErrorMessage dialog
 
 ErrorMessage::ErrorMessage (TQWidget *parent)
-	: KDialogBase (parent, "errorDialog", false, 0, KDialogBase::Close | KDialogBase::Help | KDialogBase::User1, KDialogBase::Close, true, i18n("Help on &Error") )
+	: KDialogBase (parent, "errorDialog", false, nullptr, KDialogBase::Close | KDialogBase::Help | KDialogBase::User1, KDialogBase::Close, true, i18n("Help on &Error") )
 {
 	connect( this, TQ_SIGNAL( user1Clicked() ), this, TQ_SLOT( showHelpOnError() ) );
 	connect( this, TQ_SIGNAL( helpClicked() ), this, TQ_SLOT( errorMessageHelp() ) );
@@ -269,7 +269,7 @@ void ColorPicker::slotPalChanged(int v_)
 void ColorPicker::slotReselect()
 {
 	// reselect by selectAll(), but make sure no looping occurs
-	disconnect( colorcode, TQ_SIGNAL( selectionChanged() ), 0, 0 );
+	disconnect( colorcode, TQ_SIGNAL( selectionChanged() ), nullptr, nullptr );
 	colorcode->selectAll();
 	connect( colorcode, TQ_SIGNAL( selectionChanged() ), TQ_SLOT( slotReselect() ) );
 }
@@ -298,7 +298,7 @@ void ColorPicker::slotColorPickerHelp()
 // BEGIN class RestartOrBack dialog
 
 RestartOrBack::RestartOrBack (TQWidget *parent)
-	: KDialogBase (parent, "rbDialog", true, 0, KDialogBase::User1 | KDialogBase::User2, KDialogBase::User2, false, i18n("&Restart"), i18n("&Back") )
+	: KDialogBase (parent, "rbDialog", true, nullptr, KDialogBase::User1 | KDialogBase::User2, KDialogBase::User2, false, i18n("&Restart"), i18n("&Back") )
 {
 	setPlainCaption( i18n("Finished Execution") );
 	setButtonWhatsThis( KDialogBase::User1, i18n("Click here to restart the current logo program.") );
diff --git a/kturtle/src/kturtle.cpp b/kturtle/src/kturtle.cpp
index 04416053..73f2d730 100644
--- a/kturtle/src/kturtle.cpp
+++ b/kturtle/src/kturtle.cpp
@@ -70,19 +70,19 @@
 
 // BEGIN constructor and destructor
 
-MainWindow::MainWindow(KTextEditor::Document *document) : editor(0)
+MainWindow::MainWindow(KTextEditor::Document *document) : editor(nullptr)
 {
 	// the initial values
 	CurrentFile = KURL(); // fill with empty URL
 	setCaption( i18n("Untitled") );
-	picker = 0; // for the colorpickerdialog
+	picker = nullptr; // for the colorpickerdialog
 	executing = false;
 	b_fullscreen = false;
 
 	// set the shell's ui resource file
 	if (!document)
 	{
-		if ( !(document = KTextEditor::EditorChooser::createDocument(0,"KTextEditor::Document") ) )
+		if ( !(document = KTextEditor::EditorChooser::createDocument(nullptr,"KTextEditor::Document") ) )
 		{
 			KMessageBox::error( this, i18n("A TDE text-editor component could not be found;\n"
 			                               "please check your TDE installation.") );
@@ -129,8 +129,8 @@ void MainWindow::setupActions()
 	m_recentFiles = KStdAction::openRecent(this, TQ_SLOT(slotOpenFile(const KURL&)), ac);
 	KStdAction::save(this, TQ_SLOT(slotSaveFile()), ac);
 	KStdAction::saveAs(this, TQ_SLOT(slotSaveAs()), ac);
-	new TDEAction(i18n("Save &Canvas..."), 0, 0, this, TQ_SLOT(slotSaveCanvas()), ac, "save_canvas");
-	speed = new TDESelectAction(i18n("Execution Speed"), 0, ALT+Key_S, this, TQ_SLOT( slotChangeSpeed() ), ac, "speed");
+	new TDEAction(i18n("Save &Canvas..."), nullptr, 0, this, TQ_SLOT(slotSaveCanvas()), ac, "save_canvas");
+	speed = new TDESelectAction(i18n("Execution Speed"), nullptr, ALT+Key_S, this, TQ_SLOT( slotChangeSpeed() ), ac, "speed");
 	TQStringList speeds; speeds << i18n("Full Speed") << i18n("Slow") << i18n("Slower") << i18n("Slowest");
 	speed->setItems(speeds);
 	speed->setCurrentItem(0);
@@ -158,7 +158,7 @@ void MainWindow::setupActions()
 	KStdAction::replace(this, TQ_SLOT(slotReplace()), ac);
 	
 	// View actions
-	new TDEToggleAction(i18n("Show &Line Numbers"), 0, Key_F11, this, TQ_SLOT(slotToggleLineNumbers()), ac, "line_numbers");
+	new TDEToggleAction(i18n("Show &Line Numbers"), nullptr, Key_F11, this, TQ_SLOT(slotToggleLineNumbers()), ac, "line_numbers");
 	m_fullscreen = KStdAction::fullScreen(this, TQ_SLOT(slotToggleFullscreen()), ac, this, "full_screen");
 	m_fullscreen->setChecked(b_fullscreen);
 
@@ -166,16 +166,16 @@ void MainWindow::setupActions()
 	colorpicker = new TDEToggleAction(i18n("&Color Picker"), "colorize", ALT+Key_C, this, TQ_SLOT(slotColorPicker()), ac, "color_picker");
 	new TDEAction(i18n("&Indent"), "format-indent-more", CTRL+Key_I, this, TQ_SLOT(slotIndent()), ac, "edit_indent");
 	new TDEAction(i18n("&Unindent"), "format-indent-less", CTRL+SHIFT+Key_I, this, TQ_SLOT(slotUnIndent()), ac, "edit_unindent");
-	new TDEAction(i18n("Cl&ean Indentation"), 0, 0, this, TQ_SLOT(slotCleanIndent()), ac, "edit_cleanIndent");
-	new TDEAction(i18n("Co&mment"), 0, CTRL+Key_D, this, TQ_SLOT(slotComment()), ac, "edit_comment");
-	new TDEAction(i18n("Unc&omment"), 0, CTRL+SHIFT+Key_D, this, TQ_SLOT(slotUnComment()), ac, "edit_uncomment");
+	new TDEAction(i18n("Cl&ean Indentation"), nullptr, 0, this, TQ_SLOT(slotCleanIndent()), ac, "edit_cleanIndent");
+	new TDEAction(i18n("Co&mment"), nullptr, CTRL+Key_D, this, TQ_SLOT(slotComment()), ac, "edit_comment");
+	new TDEAction(i18n("Unc&omment"), nullptr, CTRL+SHIFT+Key_D, this, TQ_SLOT(slotUnComment()), ac, "edit_uncomment");
 	
 	// Settings actions
 	KStdAction::preferences( this, TQ_SLOT(slotSettings()), ac );
 	new TDEAction(i18n("&Configure Editor..."), "configure", 0, this, TQ_SLOT(slotEditor()), ac, "set_confdlg");
 	
 	// Help actions
-	ContextHelp = new TDEAction(0, 0, Key_F2, this, TQ_SLOT(slotContextHelp()), ac, "context_help");
+	ContextHelp = new TDEAction(nullptr, nullptr, Key_F2, this, TQ_SLOT(slotContextHelp()), ac, "context_help");
 	slotContextHelpUpdate(); // this sets the label of this action
 	
 	// other
@@ -193,7 +193,7 @@ void MainWindow::setupEditor()
 	editorDock->setFrameShape(TQFrame::ToolBarPanel);
 	TQWhatsThis::add( editorDock, i18n( "This is the code editor, here you type the Logo commands to instruct the turtle. You can also open an existing Logo program with File->Open Examples... or File->Open." ) );
 	moveDockWindow(editorDock, TQt::DockLeft);
-	editor = doc->createView (editorDock, 0L);
+	editor = doc->createView (editorDock, nullptr);
 	// editorInterface is the editor interface which allows us to access the text in the part
 	editorInterface = dynamic_cast<KTextEditor::EditInterface*>(doc);
 	dynamic_cast<KTextEditor::EncodingInterface*>(doc)->setEncoding("UTF-8");
@@ -881,10 +881,10 @@ void MainWindow::slotSettings()
 	WidthHeightBox->layout()->setMargin( 11 );
 	TQVBoxLayout *WidthHeightBoxLayout = new TQVBoxLayout( WidthHeightBox->layout() );
 	WidthHeightBoxLayout->setAlignment( TQt::AlignTop );
-	TQHBoxLayout *layout3 = new TQHBoxLayout( 0, 0, 6, "layout3");
-	TQVBoxLayout *layout2 = new TQVBoxLayout( 0, 0, 6, "layout2");
+	TQHBoxLayout *layout3 = new TQHBoxLayout( nullptr, 0, 6, "layout3");
+	TQVBoxLayout *layout2 = new TQVBoxLayout( nullptr, 0, 6, "layout2");
 	
-	TQVBoxLayout *layout1 = new TQVBoxLayout( 0, 0, 6, "layout1");
+	TQVBoxLayout *layout1 = new TQVBoxLayout( nullptr, 0, 6, "layout1");
 
 	kcfg_CanvasWidth = new KIntNumInput( WidthHeightBox, "kcfg_CanvasWidth" );
 	kcfg_CanvasWidth->setValue( 400 );
@@ -923,7 +923,7 @@ void MainWindow::slotSettings()
 	TQGridLayout *groupBox1Layout = new TQGridLayout( groupBox1->layout() );
 	groupBox1Layout->setAlignment( TQt::AlignTop );
 
-	TQVBoxLayout *layout4 = new TQVBoxLayout( 0, 0, 6, "layout4");
+	TQVBoxLayout *layout4 = new TQVBoxLayout( nullptr, 0, 6, "layout4");
 
 	kcfg_LanguageComboBox = new KComboBox(groupBox1, "kcfg_LanguageComboBox");
 	kcfg_LanguageComboBox->setEditable(false);
@@ -1146,10 +1146,10 @@ void MainWindow::slotColorPicker()
 {
 	// in the constructor picker is initialised as 0
 	// if picker is 0 when this funktion is called a colorpickerdialog is created and connected
-	if (picker == 0)
+	if (!picker)
 	{
 		picker = new ColorPicker(this);
-		if(picker == 0) return; // safety
+		if(!picker) return; // safety
 		connect( picker, TQ_SIGNAL( visible(bool) ), colorpicker, TQ_SLOT( setChecked(bool) ) );
 		connect( picker, TQ_SIGNAL( ColorCode(TQString) ), this, TQ_SLOT( slotInsertText(TQString) ) );
 	}
diff --git a/kturtle/src/kturtle.h b/kturtle/src/kturtle.h
index 1c75c5b9..a9d385cd 100644
--- a/kturtle/src/kturtle.h
+++ b/kturtle/src/kturtle.h
@@ -49,7 +49,7 @@ class MainWindow : public KParts::MainWindow
   
 
 	public:
-		MainWindow(KTextEditor::Document* = 0L);
+		MainWindow(KTextEditor::Document* = nullptr);
 		virtual ~MainWindow();
 
 
diff --git a/kturtle/src/main.cpp b/kturtle/src/main.cpp
index e9d8f69e..ebf05648 100644
--- a/kturtle/src/main.cpp
+++ b/kturtle/src/main.cpp
@@ -45,7 +45,7 @@ static TDECmdLineOptions options[] =
 
 int main(int argc, char **argv)
 {
-	TDEAboutData about("kturtle", I18N_NOOP("KTurtle"), version, description, TDEAboutData::License_GPL, copyright, 0, website);
+	TDEAboutData about("kturtle", I18N_NOOP("KTurtle"), version, description, TDEAboutData::License_GPL, copyright, nullptr, website);
 	about.addAuthor("Cies Breijs",
 	      I18N_NOOP("Main developer and initiator"),
 	                "cies # kde.nl");
@@ -90,7 +90,7 @@ int main(int argc, char **argv)
 	TDECmdLineArgs::init(argc, argv, &about);
 	TDECmdLineArgs::addCmdLineOptions( options );
 	TDEApplication app;
-	MainWindow *mainwindow = 0;
+	MainWindow *mainwindow = nullptr;
 
 	if ( app.isRestored() )
 	{
diff --git a/kverbos/kverbos/kerfassen.cpp b/kverbos/kverbos/kerfassen.cpp
index af5756ef..d8315369 100644
--- a/kverbos/kverbos/kerfassen.cpp
+++ b/kverbos/kverbos/kerfassen.cpp
@@ -76,12 +76,12 @@ KErfassen::KErfassen(spanishVerbList& l, int pos, TQWidget* parent, const char*
 	formEdit[3][6] = EditNosotros2_7;
 	formEdit[4][6] = EditVosotros2_7;
 	formEdit[5][6] = EditEllos2_7;
-	formEdit[0][7] = 0;
-	formEdit[1][7] = 0;
-	formEdit[2][7] = 0;
-	formEdit[3][7] = 0;
-	formEdit[4][7] = 0;
-	formEdit[5][7] = 0;
+	formEdit[0][7] = nullptr;
+	formEdit[1][7] = nullptr;
+	formEdit[2][7] = nullptr;
+	formEdit[3][7] = nullptr;
+	formEdit[4][7] = nullptr;
+	formEdit[5][7] = nullptr;
 	formEdit[0][8] = EditYo2_8;
 	formEdit[1][8] = EditTu2_8;
 	formEdit[2][8] = EditEl2_8;
diff --git a/kverbos/kverbos/kerfassen.h b/kverbos/kverbos/kerfassen.h
index eb99ded1..6a3d134d 100644
--- a/kverbos/kverbos/kerfassen.h
+++ b/kverbos/kverbos/kerfassen.h
@@ -38,7 +38,7 @@ public:
    *  Verben in die Liste eingefï¿½gt werden kï¿½nnen. Es wird auch ein Iterator ï¿½bergeben, der
    *  anzeigt, wo mit dem editieren begonnen werden soll.
    */
-  KErfassen(spanishVerbList& l, int pos = -1, TQWidget* parent = 0, const char* name = 0, bool modal = false, WFlags fl = 0);
+  KErfassen(spanishVerbList& l, int pos = -1, TQWidget* parent = nullptr, const char* name = nullptr, bool modal = false, WFlags fl = 0);
   /** der Destruktor */
   virtual ~KErfassen();
   /** Gibt zurï¿½ck, ob durch den Ablauf des Dialoges eine ï¿½nderung an der
diff --git a/kverbos/kverbos/kresult.h b/kverbos/kverbos/kresult.h
index 6f10ec42..38cba01d 100644
--- a/kverbos/kverbos/kresult.h
+++ b/kverbos/kverbos/kresult.h
@@ -28,7 +28,7 @@
 
 class KResult : public QResult  {
 public: 
-	KResult(KVerbosUser* pU, TQWidget* parent = 0, const char* name = 0, bool modal = false, WFlags fl = 0 );	
+	KResult(KVerbosUser* pU, TQWidget* parent = nullptr, const char* name = nullptr, bool modal = false, WFlags fl = 0 );	
 	~KResult();
 public slots:	
   /** Wird durch den OK-Button aufgerufen und beendet den Dialog.
diff --git a/kverbos/kverbos/kstartuplogo.h b/kverbos/kverbos/kstartuplogo.h
index a50f19da..8980fc32 100644
--- a/kverbos/kverbos/kstartuplogo.h
+++ b/kverbos/kverbos/kstartuplogo.h
@@ -28,7 +28,7 @@ class TDEStartupLogo : public TQWidget  {
    TQ_OBJECT
   
 public:
-	TDEStartupLogo(TQWidget *parent=0, const char *name=0);
+	TDEStartupLogo(TQWidget *parent=nullptr, const char *name=nullptr);
 	~TDEStartupLogo();
 protected:
   virtual bool event(TQEvent*);
diff --git a/kverbos/kverbos/kverbedit.cpp b/kverbos/kverbos/kverbedit.cpp
index 1c1b9bec..1c91385f 100644
--- a/kverbos/kverbos/kverbedit.cpp
+++ b/kverbos/kverbos/kverbedit.cpp
@@ -87,7 +87,7 @@ void KVerbEdit::slotEditVerb()
 	// v is not a real verb it is only used for the search. v doesn't have any forms but
 	// that isn't important to compare.
 	int m = -1;
-	if (pi != 0)
+	if (pi)
 	{
 		verbSpanish v;
 		v.setSpanish(pi->text(0));
@@ -120,14 +120,14 @@ void KVerbEdit::slotEditVerb()
 		listToView();
 	};
 	delete pDlgErfassen;
-	pDlgErfassen = 0;
+	pDlgErfassen = nullptr;
 }
 
 // Das in der Listenansicht ausgewï¿½lte Verb wird gelï¿½cht.
 void KVerbEdit::slotDelete()
 {
 	TQListViewItem* pi = ListView1->selectedItem();
-	if (0 != pi)
+	if (pi)
 	{
 		// Das Listenelement hersuchen
 		bool found = false;
diff --git a/kverbos/kverbos/kverbedit.h b/kverbos/kverbos/kverbedit.h
index f7c8e01e..6f4ceb3d 100644
--- a/kverbos/kverbos/kverbedit.h
+++ b/kverbos/kverbos/kverbedit.h
@@ -34,7 +34,7 @@ public:
   /** An die Dialogklasse wird direkt die Verbliste ï¿½bergeben, damit
    *  die Liste der Verben bearbeitet werden kann.
    */
-  KVerbEdit(spanishVerbList& l, TQWidget* parent = 0, const char* name = 0, bool modal = false, WFlags fl = 0);
+  KVerbEdit(spanishVerbList& l, TQWidget* parent = nullptr, const char* name = nullptr, bool modal = false, WFlags fl = 0);
   ~KVerbEdit();
   /** kopiert die Liste in die ListView. */
   void listToView();
diff --git a/kverbos/kverbos/kverbos.cpp b/kverbos/kverbos/kverbos.cpp
index 57a18235..5ccbd91c 100644
--- a/kverbos/kverbos/kverbos.cpp
+++ b/kverbos/kverbos/kverbos.cpp
@@ -48,10 +48,10 @@
 
 int KVerbosApp::kverbosCounter = 0;
 
-KVerbosApp::KVerbosApp(TQWidget* , const char* name):TDEMainWindow (0, name)
+KVerbosApp::KVerbosApp(TQWidget* , const char* name):TDEMainWindow (nullptr, name)
 {
   // als erstes das Logo starten
-  TDEStartupLogo* start_logo = new TDEStartupLogo(0);
+  TDEStartupLogo* start_logo = new TDEStartupLogo(nullptr);
   start_logo->show();
   start_logo->raise();
 
@@ -92,11 +92,11 @@ KVerbosApp::KVerbosApp(TQWidget* , const char* name):TDEMainWindow (0, name)
     {
       // the KFeeder didn't start so it isn't installed. Delete the control object
       delete kfeederControl;
-      kfeederControl = 0;
+      kfeederControl = nullptr;
     };
   }
   else
-    kfeederControl = 0;
+    kfeederControl = nullptr;
 
   // das Logo wieder lï¿½schen
   delete start_logo;
@@ -110,7 +110,7 @@ KVerbosApp::~KVerbosApp()
 	{
 		disconnect(view, TQ_SIGNAL(informKFeeder(int)), this, TQ_SLOT(slotFeedIt(int)));
 		delete kfeederControl;
-		kfeederControl = 0;
+		kfeederControl = nullptr;
 	};
 }
 
@@ -129,12 +129,12 @@ void KVerbosApp::initActions()
   editCut = KStdAction::cut(this, TQ_SLOT(slotEditCut()), actionCollection());
   editCopy = KStdAction::copy(this, TQ_SLOT(slotEditCopy()), actionCollection());
   editPaste = KStdAction::paste(this, TQ_SLOT(slotEditPaste()), actionCollection());
-  editErfassen = new TDEAction(i18n("E&nter New Verb..."), 0, 0, this, TQ_SLOT(slotEditErfassen()), actionCollection(),"edit_erfassen");
-  editBearbeiten = new TDEAction(i18n("&Edit Verb List..."), 0, 0, this, TQ_SLOT(slotEditBearbeiten()), actionCollection(), "edit_bearbeiten");
+  editErfassen = new TDEAction(i18n("E&nter New Verb..."), nullptr, 0, this, TQ_SLOT(slotEditErfassen()), actionCollection(),"edit_erfassen");
+  editBearbeiten = new TDEAction(i18n("&Edit Verb List..."), nullptr, 0, this, TQ_SLOT(slotEditBearbeiten()), actionCollection(), "edit_bearbeiten");
 
-  settingOptions = new TDEAction(i18n("&Configure KVerbos..."), 0, 0, this, TQ_SLOT(slotSettingsOptions()), actionCollection(), "settings_options");
-  userUsername = new TDEAction(i18n("&Username..."), 0, 0, this, TQ_SLOT(slotSettingsUsername()), actionCollection(), "user_username");
-  userResults = new TDEAction(i18n("&Results"), 0, 0, this, TQ_SLOT(slotUserResults()), actionCollection(), "user_results");
+  settingOptions = new TDEAction(i18n("&Configure KVerbos..."), nullptr, 0, this, TQ_SLOT(slotSettingsOptions()), actionCollection(), "settings_options");
+  userUsername = new TDEAction(i18n("&Username..."), nullptr, 0, this, TQ_SLOT(slotSettingsUsername()), actionCollection(), "user_username");
+  userResults = new TDEAction(i18n("&Results"), nullptr, 0, this, TQ_SLOT(slotUserResults()), actionCollection(), "user_results");
  
   fileNewWindow->setToolTip(i18n("Opens a new application window"));
   fileOpenStandard->setToolTip(i18n("Opens the standard KVerbos verb file"));
@@ -504,7 +504,7 @@ void KVerbosApp::slotFileQuit()
 	// In der Dokumentation konnte ich leider nicht finden, wozu diese memberliste gut ist.
 	if(memberList)
 	{
-		for(w=memberList->first(); w!=0; w=memberList->next())
+		for(w=memberList->first(); w; w=memberList->next())
 		{
 			// only close the window if the closeEvent is accepted. If the user presses Cancel on the saveModified() dialog,
 			// the window and the application stay open.
@@ -583,7 +583,7 @@ void KVerbosApp::slotEditErfassen()
 		doc->setModified();
 	};
 	delete pDlgErfassen;
-	pDlgErfassen = 0;
+	pDlgErfassen = nullptr;
 	// Anzahl in der Statuszeile anpassen
 	emit testAnzahl(doc->getAnzahl());
 }
@@ -599,7 +599,7 @@ void KVerbosApp::slotEditBearbeiten()
 		*(getDocument()->getList()) = pDlgEdit->getList();
 	}
 	delete pDlgEdit;
-	pDlgEdit = 0;
+	pDlgEdit = nullptr;
 	// Anzahl in der Statuszeile anpassen
 	emit testAnzahl(doc->getAnzahl());
 }
@@ -703,7 +703,7 @@ void KVerbosApp::slotSettingsOptions()
     if ((pDlgEdit->CheckBoxKFeeder->isChecked() == true) && (!useKFeeder))
     {
       // kfeeder starten
-      if (kfeederControl == 0)
+      if (!kfeederControl)
         kfeederControl = new KFeederControl(kverbosCounter, showKFeederSplash, automaticKFeeder);
     }
     else
@@ -712,12 +712,12 @@ void KVerbosApp::slotSettingsOptions()
         // kfeeder anhalten
         disconnect(view, TQ_SIGNAL(informKFeeder(int)), this, TQ_SLOT(slotFeedIt(int)));
         delete kfeederControl;
-        kfeederControl = 0;
+        kfeederControl = nullptr;
       };
     useKFeeder = pDlgEdit->CheckBoxKFeeder->isChecked();
   };
   delete pDlgEdit;
-  pDlgEdit = 0;
+  pDlgEdit = nullptr;
 }
 
 void KVerbosApp::getTimeOptions(bool op[][3])
@@ -737,7 +737,7 @@ void KVerbosApp::slotSettingsUsername()
 		statusBar()->changeItem(i18n("user: ") + n, ID_USERNAME_MSG);
 		doc->setNewUser(n);
 		userResults->setEnabled(true);
-		if (kfeederControl != 0)
+		if (kfeederControl)
 			kfeederControl->reset();
         }
 }
@@ -750,7 +750,7 @@ void KVerbosApp::slotUserResults()
 
 void KVerbosApp::slotFeedIt(int n)
 {
-	if (useKFeeder && (kfeederControl != 0))
+	if (useKFeeder && (kfeederControl != nullptr))
 		kfeederControl->addN(n);
 }
 
diff --git a/kverbos/kverbos/kverbos.h b/kverbos/kverbos/kverbos.h
index 0690fd81..46f4c4bc 100644
--- a/kverbos/kverbos/kverbos.h
+++ b/kverbos/kverbos/kverbos.h
@@ -64,7 +64,7 @@ class KVerbosApp : public TDEMainWindow
   public:
     /** construtor of KVerbosApp, calls all init functions to create the application.
      */
-    KVerbosApp(TQWidget* parent=0, const char* name=0);
+    KVerbosApp(TQWidget* parent=nullptr, const char* name=nullptr);
     ~KVerbosApp();
     /** opens a file specified by commandline option
      */
diff --git a/kverbos/kverbos/kverbosdoc.cpp b/kverbos/kverbos/kverbosdoc.cpp
index b4bd2d45..c71e5d9a 100644
--- a/kverbos/kverbos/kverbosdoc.cpp
+++ b/kverbos/kverbos/kverbosdoc.cpp
@@ -37,7 +37,7 @@
 
 
 
-TQPtrList<KVerbosView> *KVerbosDoc::pViewList = 0L;
+TQPtrList<KVerbosView> *KVerbosDoc::pViewList = nullptr;
 
 KVerbosDoc::KVerbosDoc(TQWidget *parent, const char *name) : TQObject(parent, name)
 {
@@ -54,13 +54,13 @@ KVerbosDoc::KVerbosDoc(TQWidget *parent, const char *name) : TQObject(parent, na
 
 KVerbosDoc::~KVerbosDoc()
 {
-	if (benutzer != 0)
+	if (benutzer)
 	{
 		int result, number;
 		pViewList->first()->userChanged(result, number);
 		benutzer->saveUser(result, number);
 		delete benutzer;
-		benutzer = 0;
+		benutzer = nullptr;
 	};
 	verbList2.clear();
 }
@@ -90,7 +90,7 @@ void KVerbosDoc::slotUpdateAllViews(KVerbosView *sender)
 {
 	KVerbosView *w;
 	if(pViewList)
-		for(w=pViewList->first(); w!=0; w=pViewList->next())
+		for(w=pViewList->first(); w; w=pViewList->next())
 			if(w!=sender)
 				w->repaint();
 }
@@ -404,7 +404,7 @@ bool KVerbosDoc::openDocVERBOS(TQFile &f)
 				if (count < 54)
 				{
 					TQMessageBox mb("kverbos warning", "An uncomplete verb has been found in the file",
-									TQMessageBox::Warning, 1, 0, 0, 0);
+									TQMessageBox::Warning, 1, 0, 0, nullptr);
 					mb.exec();
 					//tqWarning("Ein unvollständiges Verb kam vor!");
 				};
@@ -733,7 +733,7 @@ TQString KVerbosDoc::getAuswahl(TQString s[][3], int &t)
 	if (!verbOK)
 	{
 		TQMessageBox mb("kverbos warning", "There is a problem with the verb " + s[6][0] +
-						".\nPlease check the verb in the edit dialog.", TQMessageBox::Warning, 1, 0, 0, 0);
+						".\nPlease check the verb in the edit dialog.", TQMessageBox::Warning, 1, 0, 0, nullptr);
 		mb.exec();	
 		for (int i=0; i<PERSONEN+1; i++)
 		{
@@ -756,7 +756,7 @@ spanishVerbList::Iterator KVerbosDoc::findVerb(const TQString& s)
 
 void KVerbosDoc::solved(const bool b)
 {
-	if (benutzer!=0)
+	if (benutzer)
 		if (b)
 		  benutzer->right();
 		else
@@ -768,7 +768,7 @@ void KVerbosDoc::solved(const bool b)
 // Program look if some information about the user is stored.
 void KVerbosDoc::setNewUser(const TQString n)
 {
-	if (0 != benutzer)
+	if (benutzer)
 	{
 		int result, number;
 		pViewList->first()->userChanged(result, number);
diff --git a/kverbos/kverbos/kverbosdoc.h b/kverbos/kverbos/kverbosdoc.h
index 2541d9cf..4d2776c0 100644
--- a/kverbos/kverbos/kverbosdoc.h
+++ b/kverbos/kverbos/kverbosdoc.h
@@ -66,7 +66,7 @@ class KVerbosDoc : public TQObject
     /**
      * Constructor for the fileclass of the application
      */
-    KVerbosDoc(TQWidget *parent, const char *name=0);
+    KVerbosDoc(TQWidget *parent, const char *name=nullptr);
     /**
      * Destructor for the fileclass of the application
      */
@@ -92,7 +92,7 @@ class KVerbosDoc : public TQObject
      *  Es werden bei der Datei die beiden Formate HTML-Datei und reine Textdatei unter-
      *  schieden
      */
-    bool openDocument(const KURL& url, const char *format=0);
+    bool openDocument(const KURL& url, const char *format=nullptr);
     bool openDocHTML(TQFile &f);
     bool openDocVERBOS(TQFile &f);
     /** saves the document under filename and format.
@@ -100,7 +100,7 @@ class KVerbosDoc : public TQObject
      *  werden. Die HTML-Datei ist umfangreicher, weil der formatierende HTML-Code
      *  ergänzt werden muss.
      */
-    bool saveDocument(const KURL& url, const char *format=0);
+    bool saveDocument(const KURL& url, const char *format=nullptr);
     bool saveDocHTML(TQFile &f);
     bool saveDocVERBOS(TQFile &f);
     /** sets a new user name, and deletes the old one. If the old one is different from
diff --git a/kverbos/kverbos/kverbosoptions.h b/kverbos/kverbos/kverbosoptions.h
index 69b18047..3595f63e 100644
--- a/kverbos/kverbos/kverbosoptions.h
+++ b/kverbos/kverbos/kverbosoptions.h
@@ -27,7 +27,7 @@
 
 class KVerbosOptions : public QVerbosOptions  {
 public:
-  KVerbosOptions( TQWidget* parent = 0, const char* name = 0, bool modal = false, WFlags fl = 0 );
+  KVerbosOptions( TQWidget* parent = nullptr, const char* name = nullptr, bool modal = false, WFlags fl = 0 );
   ~KVerbosOptions();
 
 public slots:
diff --git a/kverbos/kverbos/kverbosview.cpp b/kverbos/kverbos/kverbosview.cpp
index d79c690a..22639e23 100644
--- a/kverbos/kverbos/kverbosview.cpp
+++ b/kverbos/kverbos/kverbosview.cpp
@@ -333,7 +333,7 @@ void KVerbosView::slotFont()
 	{
 		TQFont fontNormal = EditVerbo->font();	
 		TQLineEdit* pl = dynamic_cast<TQLineEdit*>(focusWidget());
-		if (0 != pl)
+		if (pl)
 		{
 			pl->setFont(fontNormal);
 			pl->setPalette(EditVerbo->palette());
diff --git a/kverbos/kverbos/kverbosview.h b/kverbos/kverbos/kverbosview.h
index ae503d44..bc10b691 100644
--- a/kverbos/kverbos/kverbosview.h
+++ b/kverbos/kverbos/kverbosview.h
@@ -63,7 +63,7 @@ class KVerbosView : public QLernen /*TQWidget*/
   
 public:
   /** Constructor for the main view */
-  KVerbosView(TQWidget *parent = 0, const char *name=0);
+  KVerbosView(TQWidget *parent = nullptr, const char *name=nullptr);
   /** Destructor for the main view */
   ~KVerbosView();
 
diff --git a/kverbos/kverbos/main.cpp b/kverbos/kverbos/main.cpp
index 23eebb5c..faaa908b 100644
--- a/kverbos/kverbos/main.cpp
+++ b/kverbos/kverbos/main.cpp
@@ -25,7 +25,7 @@ static const char description[] =
 
 static TDECmdLineOptions options[] =
 {
-  { "+[File]", I18N_NOOP("File to open"), 0 },
+  { "+[File]", I18N_NOOP("File to open"), nullptr },
   TDECmdLineLastOption
   // INSERT YOUR COMMANDLINE OPTIONS HERE
 };
@@ -37,8 +37,8 @@ int main(int argc, char *argv[])
 
 	TDEAboutData aboutData( "kverbos", I18N_NOOP("KVerbos"),
 		VERSION, description, TDEAboutData::License_GPL,
-		"(c) 2001, Arnold Kraschinski", 0, 0, "arnold.k67@gmx.de");
-	aboutData.addAuthor("Arnold Kraschinski",0, "arnold.k67@gmx.de");
+		"(c) 2001, Arnold Kraschinski", nullptr, nullptr, "arnold.k67@gmx.de");
+	aboutData.addAuthor("Arnold Kraschinski",nullptr, "arnold.k67@gmx.de");
 	aboutData.addCredit("David Vignoni", I18N_NOOP("svg icon"), "david80v@tin.it");
 	TDECmdLineArgs::init( argc, argv, &aboutData );
 	TDECmdLineArgs::addCmdLineOptions( options ); // Add our own options.
diff --git a/kvoctrain/kvoctrain/common-dialogs/ProgressDlg.cpp b/kvoctrain/kvoctrain/common-dialogs/ProgressDlg.cpp
index b00278a3..49285913 100644
--- a/kvoctrain/kvoctrain/common-dialogs/ProgressDlg.cpp
+++ b/kvoctrain/kvoctrain/common-dialogs/ProgressDlg.cpp
@@ -37,7 +37,7 @@
 ProgressDlg::ProgressDlg(const TQString &doctitle, const TQString &filename, const TQString &title, TQWidget* parent, const char* name)
   : ProgressDlgForm( parent, name )
 {
-  doc = 0;
+  doc = nullptr;
   setCaption (title);
   l_title->setText (doctitle);
   l_file->setText (filename);
@@ -48,7 +48,7 @@ ProgressDlg::ProgressDlg(const TQString &doctitle, const TQString &filename, con
 void ProgressDlg::setValue( kvoctrainDoc *new_doc, int val)
 {
   progress->setProgress(val);
-  if (doc == 0 && new_doc != 0)
+  if (doc == nullptr && new_doc)
   {
     doc = new_doc;
     l_title->setText (doc->getTitle());
diff --git a/kvoctrain/kvoctrain/common-dialogs/blockoptions.cpp b/kvoctrain/kvoctrain/common-dialogs/blockoptions.cpp
index 1d39a821..2450be9d 100644
--- a/kvoctrain/kvoctrain/common-dialogs/blockoptions.cpp
+++ b/kvoctrain/kvoctrain/common-dialogs/blockoptions.cpp
@@ -70,7 +70,7 @@ static ListRef date_itemlist [] =
   {I18N_NOOP("6 Months"), 6 * 60*60*24*30},
   {I18N_NOOP("10 Months"), 10 * 60*60*24*30},
   {I18N_NOOP("12 Months"), 12 * 60*60*24*30},
-  {0 ,  0}
+  {nullptr ,  0}
 };
 
 
@@ -180,7 +180,7 @@ void BlockOptions::fillComboBox(TQComboBox * cb)
   ListRef *ref = date_itemlist;
 
   cb->clear();
-  while (ref->text != 0)
+  while (ref->text)
   {
     cb->insertItem (i18n(ref->text));
     ref++;
@@ -192,7 +192,7 @@ void BlockOptions::updateComboBox(int value, TQComboBox * cb)
   ListRef *ref = date_itemlist;
   int index = 0;
 
-  while (ref->text != 0)
+  while (ref->text)
   {
     if (value == ref->num)
       index = ref - date_itemlist;
diff --git a/kvoctrain/kvoctrain/common-dialogs/blockoptions.h b/kvoctrain/kvoctrain/common-dialogs/blockoptions.h
index b77fe2a0..b17ee077 100644
--- a/kvoctrain/kvoctrain/common-dialogs/blockoptions.h
+++ b/kvoctrain/kvoctrain/common-dialogs/blockoptions.h
@@ -39,7 +39,7 @@ class BlockOptions : public BlockOptionsBase
   
 
 public:
-  BlockOptions(TQWidget* parent = 0, const char* name = 0, WFlags fl = 0 );
+  BlockOptions(TQWidget* parent = nullptr, const char* name = nullptr, WFlags fl = 0 );
   void updateWidgets();
   bool hasChanged();
   bool isDefault();
diff --git a/kvoctrain/kvoctrain/common-dialogs/generaloptions.h b/kvoctrain/kvoctrain/common-dialogs/generaloptions.h
index e008b013..ac2f6917 100644
--- a/kvoctrain/kvoctrain/common-dialogs/generaloptions.h
+++ b/kvoctrain/kvoctrain/common-dialogs/generaloptions.h
@@ -34,7 +34,7 @@ class GeneralOptions : public GeneralOptionsBase
   
 
 public:
-  GeneralOptions(TQWidget* parent = 0, const char* name = 0, WFlags fl = 0 );
+  GeneralOptions(TQWidget* parent = nullptr, const char* name = nullptr, WFlags fl = 0 );
 };
 
 #endif
diff --git a/kvoctrain/kvoctrain/common-dialogs/groupoptions.h b/kvoctrain/kvoctrain/common-dialogs/groupoptions.h
index da504aaf..495bcc96 100644
--- a/kvoctrain/kvoctrain/common-dialogs/groupoptions.h
+++ b/kvoctrain/kvoctrain/common-dialogs/groupoptions.h
@@ -34,7 +34,7 @@ class GroupOptions : public GroupOptionsBase
   
 
 public:
-  GroupOptions(TQWidget* parent = 0, const char* name = 0, WFlags fl = 0 );
+  GroupOptions(TQWidget* parent = nullptr, const char* name = nullptr, WFlags fl = 0 );
 
   void updateButtons();
 };
diff --git a/kvoctrain/kvoctrain/common-dialogs/kvoctrainprefs.cpp b/kvoctrain/kvoctrain/common-dialogs/kvoctrainprefs.cpp
index ac7e1906..047c83eb 100644
--- a/kvoctrain/kvoctrain/common-dialogs/kvoctrainprefs.cpp
+++ b/kvoctrain/kvoctrain/common-dialogs/kvoctrainprefs.cpp
@@ -62,28 +62,28 @@ KVocTrainPrefs::KVocTrainPrefs(LangSet & ls, kvoctrainDoc * doc, KComboBox * les
   m_config = config;
   m_queryManager = m;
 
-  m_generalOptions = new GeneralOptions(0, "General Settings");
+  m_generalOptions = new GeneralOptions(nullptr, "General Settings");
   addPage(m_generalOptions, i18n("General"), "kvoctrain", i18n("General Settings"), true);
 
-  m_languageOptions = new LanguageOptions(m_langSet, 0, "Language Settings");
+  m_languageOptions = new LanguageOptions(m_langSet, nullptr, "Language Settings");
   addPage(m_languageOptions, i18n("Languages"), "set_language", i18n("Language Settings"), true);
   connect(m_languageOptions, TQ_SIGNAL(widgetModified()), this, TQ_SLOT(updateButtons()));
 
-  m_viewOptions = new ViewOptions(0, "View Settings");
+  m_viewOptions = new ViewOptions(nullptr, "View Settings");
   addPage(m_viewOptions, i18n("View"), "view_choose", i18n("View Settings"), true);
 
-  m_pasteOptions = new PasteOptions(m_langSet, doc, 0, "Copy & Paste Settings");
+  m_pasteOptions = new PasteOptions(m_langSet, doc, nullptr, "Copy & Paste Settings");
   addPage(m_pasteOptions, i18n("Copy & Paste"), "edit-paste", i18n("Copy & Paste Settings"), true);
   connect(m_pasteOptions, TQ_SIGNAL(widgetModified()), this, TQ_SLOT(updateButtons()));
 
-  m_queryOptions = new QueryOptions(0, "Query Settings");
+  m_queryOptions = new QueryOptions(nullptr, "Query Settings");
   addPage(m_queryOptions, i18n("Query"), "run_query", i18n("Query Settings"), true);
 
-  m_thresholdOptions = new ThresholdOptions(lessons, m_queryManager, 0, "Threshold Settings");
+  m_thresholdOptions = new ThresholdOptions(lessons, m_queryManager, nullptr, "Threshold Settings");
   addPage(m_thresholdOptions, i18n("Thresholds"), "configure", i18n("Threshold Settings"), true);
   connect(m_thresholdOptions, TQ_SIGNAL(widgetModified()), this, TQ_SLOT(updateButtons()));
 
-  m_blockOptions = new BlockOptions(0, "Blocking Settings");
+  m_blockOptions = new BlockOptions(nullptr, "Blocking Settings");
   addPage(m_blockOptions, i18n("Blocking"), "configure", i18n("Blocking Settings"), true);
   connect(m_blockOptions, TQ_SIGNAL(widgetModified()), this, TQ_SLOT(updateButtons()));
   connect(m_blockOptions, TQ_SIGNAL(blockExpireChanged(bool, bool)), m_thresholdOptions, TQ_SLOT(slotBlockExpire(bool, bool)));
@@ -142,7 +142,7 @@ void KVocTrainPrefs::slotUser1()
 
   if (showDlg)
   {
-    ProfilesDialog * dlg = new ProfilesDialog(m_queryManager, this, 0, true);
+    ProfilesDialog * dlg = new ProfilesDialog(m_queryManager, this, nullptr, true);
     connect(dlg, TQ_SIGNAL(profileActivated()), this, TQ_SLOT(updateWidgets()));
     dlg->show();
   }
diff --git a/kvoctrain/kvoctrain/common-dialogs/kvoctrainprefs.h b/kvoctrain/kvoctrain/common-dialogs/kvoctrainprefs.h
index 7e200aeb..1b136a87 100644
--- a/kvoctrain/kvoctrain/common-dialogs/kvoctrainprefs.h
+++ b/kvoctrain/kvoctrain/common-dialogs/kvoctrainprefs.h
@@ -47,8 +47,8 @@ public:
   /**
    * Creates a configuration dialog.
    */
-  KVocTrainPrefs(LangSet & ls, kvoctrainDoc * doc, KComboBox * lessons, QueryManager * m, TQWidget *parent=0,
-    const char *name=0, TDEConfigSkeleton *config=0, DialogType dialogType=IconList,
+  KVocTrainPrefs(LangSet & ls, kvoctrainDoc * doc, KComboBox * lessons, QueryManager * m, TQWidget *parent=nullptr,
+    const char *name=nullptr, TDEConfigSkeleton *config=nullptr, DialogType dialogType=IconList,
     int dialogButtons=Default|Ok|Apply|Cancel|Help, ButtonCode defaultButton=Ok, bool modal=false);
 
   /**
diff --git a/kvoctrain/kvoctrain/common-dialogs/languageoptions.cpp b/kvoctrain/kvoctrain/common-dialogs/languageoptions.cpp
index b04f1b9e..d7bca59c 100644
--- a/kvoctrain/kvoctrain/common-dialogs/languageoptions.cpp
+++ b/kvoctrain/kvoctrain/common-dialogs/languageoptions.cpp
@@ -223,7 +223,7 @@ KV_ISO639_Code kv_iso639_1[] = {
   {"za", "zha", I18N_NOOP("Zhuang")},
   {"zh", "chi", I18N_NOOP("Chinese")},
   {"zu", "zul", I18N_NOOP("Zulu")},
-  {0, 0, 0}
+  {nullptr, nullptr, nullptr}
 };
 
 /* only when really needed
@@ -680,7 +680,7 @@ KV_ISO639_Code kv_iso639_2[] = {
 LanguageOptions::LanguageOptions(LangSet & langset, TQWidget* parent, const char* name, WFlags fl)
   : LanguageOptionsBase(parent, name, fl), m_langSet(langset)
 {
-  langset_popup = 0;
+  langset_popup = nullptr;
 
   connect(b_langDel, TQ_SIGNAL(clicked()), this, TQ_SLOT(slotDeleteClicked()));
   connect(b_langNew, TQ_SIGNAL(clicked()), this, TQ_SLOT(slotNewClicked()));
@@ -1175,7 +1175,7 @@ void LanguageOptions::slotLangFromGlobalActivated(int i)
 
 void LanguageOptions::loadISO6391Data()
 {
-  for (unsigned id = 0; id < (int)(sizeof(kv_iso639_1) / sizeof(kv_iso639_1[0])) && kv_iso639_1[id].iso1code != 0; ++id)
+  for (unsigned id = 0; id < (int)(sizeof(kv_iso639_1) / sizeof(kv_iso639_1[0])) && kv_iso639_1[id].iso1code; ++id)
   {
     TQString s = i18n(kv_iso639_1[id].langname);
     global_langset.addSet(kv_iso639_1[id].iso1code, s, TQString(), kv_iso639_1[id].iso2code);
@@ -1194,7 +1194,7 @@ void LanguageOptions::createISO6391Menus()
 
   iso6391_popup = new TQPopupMenu();
 
-  TQPopupMenu *pop = 0;
+  TQPopupMenu *pop = nullptr;
   TQString lang = "";
   for (TQMap<TQString, int>::Iterator it = languages.begin(); it != languages.end(); ++it)
   {
diff --git a/kvoctrain/kvoctrain/common-dialogs/languageoptions.h b/kvoctrain/kvoctrain/common-dialogs/languageoptions.h
index 49ecfa41..09659a86 100644
--- a/kvoctrain/kvoctrain/common-dialogs/languageoptions.h
+++ b/kvoctrain/kvoctrain/common-dialogs/languageoptions.h
@@ -37,7 +37,7 @@ class LanguageOptions : public LanguageOptionsBase
   
 
 public:
-  LanguageOptions(LangSet & langset, TQWidget* parent = 0, const char* name = 0, WFlags fl = 0 );
+  LanguageOptions(LangSet & langset, TQWidget* parent = nullptr, const char* name = nullptr, WFlags fl = 0 );
   virtual ~LanguageOptions ();
 
   LangSet getLangSet () const;
diff --git a/kvoctrain/kvoctrain/common-dialogs/pasteoptions.cpp b/kvoctrain/kvoctrain/common-dialogs/pasteoptions.cpp
index a009e0bf..f7d8fd06 100644
--- a/kvoctrain/kvoctrain/common-dialogs/pasteoptions.cpp
+++ b/kvoctrain/kvoctrain/common-dialogs/pasteoptions.cpp
@@ -47,7 +47,7 @@ static const char *separator_id[] =
   "  ",             // 6
   ":",              // 7
   "::",             // 8
-  0
+  nullptr
 };
 
 PasteOptions::PasteOptions(LangSet & langset, kvoctrainDoc * doc, TQWidget* parent, const char* name, WFlags fl)
diff --git a/kvoctrain/kvoctrain/common-dialogs/pasteoptions.h b/kvoctrain/kvoctrain/common-dialogs/pasteoptions.h
index f804ecd4..f776a1c1 100644
--- a/kvoctrain/kvoctrain/common-dialogs/pasteoptions.h
+++ b/kvoctrain/kvoctrain/common-dialogs/pasteoptions.h
@@ -37,7 +37,7 @@ class PasteOptions : public PasteOptionsBase
   
 
 public:
-  PasteOptions(LangSet & langset, kvoctrainDoc * doc, TQWidget* parent = 0, const char* name = 0, WFlags fl = 0 );
+  PasteOptions(LangSet & langset, kvoctrainDoc * doc, TQWidget* parent = nullptr, const char* name = nullptr, WFlags fl = 0 );
 
   void updateWidgets();
   bool hasChanged();
diff --git a/kvoctrain/kvoctrain/common-dialogs/profilesdialog.h b/kvoctrain/kvoctrain/common-dialogs/profilesdialog.h
index 7a131d9b..b6835a8a 100644
--- a/kvoctrain/kvoctrain/common-dialogs/profilesdialog.h
+++ b/kvoctrain/kvoctrain/common-dialogs/profilesdialog.h
@@ -49,7 +49,7 @@ class TDE_EXPORT ProfilesDialog : public KDialogBase
   
 
 public:
-  ProfilesDialog(QueryManager * m, TQWidget *parent = 0, const char *name = 0, bool modal = true);
+  ProfilesDialog(QueryManager * m, TQWidget *parent = nullptr, const char *name = nullptr, bool modal = true);
 
 signals:
   void profileActivated();
diff --git a/kvoctrain/kvoctrain/common-dialogs/queryoptions.h b/kvoctrain/kvoctrain/common-dialogs/queryoptions.h
index e54bf906..08fa4725 100644
--- a/kvoctrain/kvoctrain/common-dialogs/queryoptions.h
+++ b/kvoctrain/kvoctrain/common-dialogs/queryoptions.h
@@ -34,7 +34,7 @@ class QueryOptions : public QueryOptionsBase
   
 
 public:
-  QueryOptions(TQWidget* parent = 0, const char* name = 0, WFlags fl = 0 );
+  QueryOptions(TQWidget* parent = nullptr, const char* name = nullptr, WFlags fl = 0 );
 
   void updateWidgets();
 };
diff --git a/kvoctrain/kvoctrain/common-dialogs/thresholdoptions.cpp b/kvoctrain/kvoctrain/common-dialogs/thresholdoptions.cpp
index 5b81c32a..e3caf4ea 100644
--- a/kvoctrain/kvoctrain/common-dialogs/thresholdoptions.cpp
+++ b/kvoctrain/kvoctrain/common-dialogs/thresholdoptions.cpp
@@ -97,7 +97,7 @@ static ThreshListRef Threshdate_itemlist [] =
         {I18N_NOOP("4 Months"), 4 * 60*60*24*30},
         {I18N_NOOP("5 Months"), 5 * 60*60*24*30},
         {I18N_NOOP("6 Months"), 6 * 60*60*24*30},
-        {0, 0}
+        {nullptr, 0}
       };
 
 
@@ -153,7 +153,7 @@ void ThresholdOptions::fillWidgets()
 
   ref = Threshdate_itemlist;
   datelist->clear();
-  while (ref->text != 0 )
+  while (ref->text )
   {
     datelist->insertItem (i18n(ref->text));
     ref++;
@@ -238,7 +238,7 @@ void ThresholdOptions::updateWidgets()
   querylist->setCurrentItem(Prefs::queryItem());
 
   ref = Threshdate_itemlist;
-  while (ref->text != 0 ) {
+  while (ref->text ) {
     if (Prefs::dateItem() == ref->num)
       index = ref - Threshdate_itemlist;
     ref++;
diff --git a/kvoctrain/kvoctrain/common-dialogs/thresholdoptions.h b/kvoctrain/kvoctrain/common-dialogs/thresholdoptions.h
index b796c9ed..bedf0073 100644
--- a/kvoctrain/kvoctrain/common-dialogs/thresholdoptions.h
+++ b/kvoctrain/kvoctrain/common-dialogs/thresholdoptions.h
@@ -37,7 +37,7 @@ class ThresholdOptions : public ThresholdOptionsBase
   
 
 public:
-  ThresholdOptions(KComboBox * lessons, QueryManager * m, TQWidget* parent = 0, const char* name = 0, WFlags fl = 0 );
+  ThresholdOptions(KComboBox * lessons, QueryManager * m, TQWidget* parent = nullptr, const char* name = nullptr, WFlags fl = 0 );
 
   void updateWidgets();
   bool hasChanged();
diff --git a/kvoctrain/kvoctrain/common-dialogs/viewoptions.h b/kvoctrain/kvoctrain/common-dialogs/viewoptions.h
index d40ac072..f78d06f3 100644
--- a/kvoctrain/kvoctrain/common-dialogs/viewoptions.h
+++ b/kvoctrain/kvoctrain/common-dialogs/viewoptions.h
@@ -34,7 +34,7 @@ class ViewOptions : public ViewOptionsBase
   
 
 public:
-  ViewOptions(TQWidget* parent = 0, const char* name = 0, WFlags fl = 0 );
+  ViewOptions(TQWidget* parent = nullptr, const char* name = nullptr, WFlags fl = 0 );
 
 };
 
diff --git a/kvoctrain/kvoctrain/entry-dialogs/AuxInfoEntryPage.h b/kvoctrain/kvoctrain/entry-dialogs/AuxInfoEntryPage.h
index 42d23f83..f06814e3 100644
--- a/kvoctrain/kvoctrain/entry-dialogs/AuxInfoEntryPage.h
+++ b/kvoctrain/kvoctrain/entry-dialogs/AuxInfoEntryPage.h
@@ -45,8 +45,8 @@ public:
     TQString     example,
     TQString     remark,
     TQString     para,
-    TQWidget    *parent = 0,
-    const char *name = 0
+    TQWidget    *parent = nullptr,
+    const char *name = nullptr
   );
 
   void setData(bool multi_sel, TQString syno, TQString anto, TQString example, TQString remark, TQString  para);
diff --git a/kvoctrain/kvoctrain/entry-dialogs/EntryDlg.cpp b/kvoctrain/kvoctrain/entry-dialogs/EntryDlg.cpp
index 5dfcbf85..a5220667 100644
--- a/kvoctrain/kvoctrain/entry-dialogs/EntryDlg.cpp
+++ b/kvoctrain/kvoctrain/entry-dialogs/EntryDlg.cpp
@@ -87,8 +87,8 @@ EntryDlg::EntryDlg(
   docked = false;
   edit_row = -1;
   edit_col = -1;
-  from_page = 0;
-  to_page = 0;
+  from_page = nullptr;
+  to_page = nullptr;
 
   TQString s;
   if (langset.findLongId(lang).isEmpty() )
@@ -189,9 +189,9 @@ EntryDlg::EntryDlg(
   connect (mc_page, TQ_SIGNAL(sigModified()), this, TQ_SLOT(slotDisplayModified() ));
   connect (tense_page, TQ_SIGNAL(sigModified()), this, TQ_SLOT(slotDisplayModified() ));
 
-  if (from_page != 0)
+  if (from_page)
     connect (from_page, TQ_SIGNAL(sigModified()), this, TQ_SLOT(slotDisplayModified() ));
-  if (to_page != 0)
+  if (to_page)
     connect (to_page, TQ_SIGNAL(sigModified()), this, TQ_SLOT(slotDisplayModified() ));
 
   enableButtonApply(false);
@@ -255,9 +255,9 @@ void EntryDlg::setData(
   aux_page->setData(multi_sel, synonym, antonym, example, rem, paraphrase);
   mc_page->setData(multi_sel, mc);
   tense_page->setData(multi_sel, conjugations);
-  if (from_page != 0)
+  if (from_page)
     from_page->setData(multi_sel, f_grd, f_qdate, f_qcount, f_bcount, f_faux_ami, i18n("Properties From Original"));
-  if (to_page != 0)
+  if (to_page)
     to_page->setData(multi_sel, t_grd, t_qdate, t_qcount, t_bcount, t_faux_ami, i18n("Properties to Original"));
 
   setModified(false);
@@ -297,9 +297,9 @@ void EntryDlg::setModified(bool mod)
   tense_page->setModified(mod);
   mc_page->setModified(mod);
   adj_page->setModified(mod);
-  if (from_page != 0)
+  if (from_page)
     from_page->setModified(mod);
-  if (to_page != 0)
+  if (to_page)
     to_page->setModified(mod);
   enableButtonApply(false);
   enableButton(User1, false);
@@ -324,9 +324,9 @@ void EntryDlg::setEnabled(int enable)
     tense_page->setEnabled(main == TQM_VERB ? EnableAll : EnableNone);
     mc_page->setEnabled(EnableAll);
     adj_page->setEnabled(main == TQM_ADJ ? EnableAll : EnableNone);
-    if (from_page != 0)
+    if (from_page)
       from_page->setEnabled(EnableNone);
-    if (to_page != 0)
+    if (to_page)
       to_page->setEnabled(EnableNone);
   }
   else
@@ -337,9 +337,9 @@ void EntryDlg::setEnabled(int enable)
     tense_page->setEnabled(main == TQM_VERB ? enable : EnableNone);
     mc_page->setEnabled(enable);
     adj_page->setEnabled(main == TQM_ADJ ? enable : EnableNone);
-    if (from_page != 0)
+    if (from_page)
       from_page->setEnabled(enable);
-    if (to_page != 0)
+    if (to_page)
       to_page->setEnabled(enable);
   }
 }
@@ -365,10 +365,10 @@ bool EntryDlg::isModified()
           || mc_page->isModified()
           || adj_page->isModified();
 
-  if (from_page != 0)
+  if (from_page)
     mod |= from_page->isModified();
 
-  if (to_page != 0)
+  if (to_page)
     mod |= to_page->isModified();
 
   return mod;
diff --git a/kvoctrain/kvoctrain/entry-dialogs/EntryDlg.h b/kvoctrain/kvoctrain/entry-dialogs/EntryDlg.h
index 8d64542e..f8b7e937 100644
--- a/kvoctrain/kvoctrain/entry-dialogs/EntryDlg.h
+++ b/kvoctrain/kvoctrain/entry-dialogs/EntryDlg.h
@@ -90,8 +90,8 @@ public:
     const TQString &title,
     bool           active,
     const TQFont&   ipafont,
-    TQWidget       *parent = 0,
-    const char    *name = 0,
+    TQWidget       *parent = nullptr,
+    const char    *name = nullptr,
     bool           modal = false
   );
 
diff --git a/kvoctrain/kvoctrain/entry-dialogs/FromToEntryPage.cpp b/kvoctrain/kvoctrain/entry-dialogs/FromToEntryPage.cpp
index 8fc70db0..1d68337b 100644
--- a/kvoctrain/kvoctrain/entry-dialogs/FromToEntryPage.cpp
+++ b/kvoctrain/kvoctrain/entry-dialogs/FromToEntryPage.cpp
@@ -87,9 +87,9 @@ FromToEntryPage::FromToEntryPage
   connect( month_spin, TQ_SIGNAL(valueChanged(int)), TQ_SLOT(slotMonthChanged(int)) );
   connect( day_spin,   TQ_SIGNAL(valueChanged(int)), TQ_SLOT(slotDayChanged(int)) );
 
-  year_spin->setData ((TQStringList *) 0, 1980, 2100);
+  year_spin->setData ((TQStringList *) nullptr, 1980, 2100);
   month_spin->setData (&monthnames, 1, 12);
-  day_spin->setData ((TQStringList *) 0, 1, 31);
+  day_spin->setData ((TQStringList *) nullptr, 1, 31);
 
   TQString s;
   for (int i = 0; i <= KV_MAX_GRADE; i++) {
@@ -142,7 +142,7 @@ void FromToEntryPage::setData(
     day_spin->setSpecial(TQString());
   }
   else {
-    dt.setTime_t (time(0L));
+    dt.setTime_t (time(nullptr));
     date = dt.date();
     year = date.year();
     month = date.month();
@@ -330,7 +330,7 @@ void FromToEntryPage::slotToday()
   setModified(true);
   date_dirty = true;
   TQDateTime dt;
-  dt.setTime_t (time(0L));
+  dt.setTime_t (time(nullptr));
 
   year = dt.date().year();
   month = dt.date().month();
diff --git a/kvoctrain/kvoctrain/entry-dialogs/MySpinBox.cpp b/kvoctrain/kvoctrain/entry-dialogs/MySpinBox.cpp
index 9e7c7450..7ab3be25 100644
--- a/kvoctrain/kvoctrain/entry-dialogs/MySpinBox.cpp
+++ b/kvoctrain/kvoctrain/entry-dialogs/MySpinBox.cpp
@@ -27,7 +27,7 @@
 
 #include "MySpinBox.h"
 
-MySpinBox::MySpinBox (TQWidget* parent, const char* name ): TQSpinBox(parent, name ), spin_names (0)
+MySpinBox::MySpinBox (TQWidget* parent, const char* name ): TQSpinBox(parent, name ), spin_names (nullptr)
 {
   setWrapping(true);
 }
@@ -45,7 +45,7 @@ TQString MySpinBox::mapValueToText( int value )
   if (special_str.length() != 0 )
     return special_str;
 
-  if (spin_names != 0)
+  if (spin_names)
     return (*spin_names)[value];
   else
     return TQString("%1").arg(value);
diff --git a/kvoctrain/kvoctrain/entry-dialogs/MySpinBox.h b/kvoctrain/kvoctrain/entry-dialogs/MySpinBox.h
index 4e9ae0f3..03b853b2 100644
--- a/kvoctrain/kvoctrain/entry-dialogs/MySpinBox.h
+++ b/kvoctrain/kvoctrain/entry-dialogs/MySpinBox.h
@@ -33,7 +33,7 @@ class TQStringlist;
 class MySpinBox : public TQSpinBox
 {
 public:
-  MySpinBox (TQWidget* parent = 0, const char* name = 0);
+  MySpinBox (TQWidget* parent = nullptr, const char* name = nullptr);
 
   void setSpecial(const TQString &str);
   void setData (TQStringList *names, int minValue, int maxValue);
diff --git a/kvoctrain/kvoctrain/entry-dialogs/PhoneticEntryPage.cpp b/kvoctrain/kvoctrain/entry-dialogs/PhoneticEntryPage.cpp
index e710d2ef..943ee2d7 100644
--- a/kvoctrain/kvoctrain/entry-dialogs/PhoneticEntryPage.cpp
+++ b/kvoctrain/kvoctrain/entry-dialogs/PhoneticEntryPage.cpp
@@ -164,7 +164,7 @@ KV_Unicode_Ref kv_unicode_ref[] = {
    {0x2191, "UPWARDS ARROW",     I18N_NOOP_maybe("egressive airflow")},
    {0x2193, "DOWNWARDS ARROW",     I18N_NOOP_maybe("ingressive airflow")},
 
-   {0, 0, 0}
+   {0, nullptr, nullptr}
 };
 
 
diff --git a/kvoctrain/kvoctrain/entry-dialogs/PhoneticEntryPage.h b/kvoctrain/kvoctrain/entry-dialogs/PhoneticEntryPage.h
index 34f91e3d..80c7e8a9 100644
--- a/kvoctrain/kvoctrain/entry-dialogs/PhoneticEntryPage.h
+++ b/kvoctrain/kvoctrain/entry-dialogs/PhoneticEntryPage.h
@@ -37,7 +37,7 @@ class PhoneticEntryPage : public KDialogBase
   
 
 public:
-  PhoneticEntryPage(const TQFont &ipafont, TQWidget *parent = 0, const char *name = 0, bool modal = false);
+  PhoneticEntryPage(const TQFont &ipafont, TQWidget *parent = nullptr, const char *name = nullptr, bool modal = false);
 
 signals:
   void charSelected(wchar_t);
@@ -55,7 +55,7 @@ class PhoneticButton : public TQPushButton
   
 
 public:
-  PhoneticButton (const TQString & text, TQWidget * parent, PhoneticEntryPage *_page, const char * name = 0)
+  PhoneticButton (const TQString & text, TQWidget * parent, PhoneticEntryPage *_page, const char * name = nullptr)
   : TQPushButton (text, parent, name), page(_page) {}
 
 protected slots:
diff --git a/kvoctrain/kvoctrain/entry-dialogs/blockall.cpp b/kvoctrain/kvoctrain/entry-dialogs/blockall.cpp
index a21fd2b8..64d9af27 100644
--- a/kvoctrain/kvoctrain/entry-dialogs/blockall.cpp
+++ b/kvoctrain/kvoctrain/entry-dialogs/blockall.cpp
@@ -25,7 +25,7 @@
 
 #include "blockall.h"
 
-BlockAllValidator::BlockAllValidator() : TQValidator (0, 0)
+BlockAllValidator::BlockAllValidator() : TQValidator (nullptr, nullptr)
 {
 }
 
diff --git a/kvoctrain/kvoctrain/kva_clip.cpp b/kvoctrain/kvoctrain/kva_clip.cpp
index a3a5860e..aa411930 100644
--- a/kvoctrain/kvoctrain/kva_clip.cpp
+++ b/kvoctrain/kvoctrain/kva_clip.cpp
@@ -84,7 +84,7 @@ void kvoctrainApp::slotEditCopy()
     if (table->isRowSelected(j))
     {
       kvoctrainExpr *expr = table->getRow(j);
-      if (expr == 0 ) return;
+      if (!expr ) return;
 
       bool sep =  false;
       for (int i = 0; i < (int) csv_order.size(); i++) {
diff --git a/kvoctrain/kvoctrain/kva_header.cpp b/kvoctrain/kvoctrain/kva_header.cpp
index 0856a02c..08cb5624 100644
--- a/kvoctrain/kvoctrain/kva_header.cpp
+++ b/kvoctrain/kvoctrain/kva_header.cpp
@@ -45,7 +45,7 @@ static const char *SORT_NUM =  I18N_NOOP("Sort by &index");
 void kvoctrainApp::slotHeaderMenu(int header, int x, int y) /*FOLD00*/
 {
   delete header_m;
-  header_m = 0;
+  header_m = nullptr;
 
   if (header == KV_COL_LESS) {
     header_m = new TQPopupMenu();
@@ -457,7 +457,7 @@ void kvoctrainApp::slotHeaderCallBack (int header_and_cmd) /*FOLD00*/
 
     case IDH_START_QUERY:
       delete randomQueryDlg;
-      randomQueryDlg = 0;
+      randomQueryDlg = nullptr;
       queryType = TQT_Random;
       slotStartQuery(header1 ? doc->getIdent(header1) : doc->getOriginalIdent(),
                      header2 ? doc->getIdent(header2) : doc->getOriginalIdent(), true);
@@ -465,7 +465,7 @@ void kvoctrainApp::slotHeaderCallBack (int header_and_cmd) /*FOLD00*/
 
     case IDH_START_MULTIPLE:
       delete mcQueryDlg;
-      mcQueryDlg = 0;
+      mcQueryDlg = nullptr;
       queryType = TQT_Multiple;
       slotStartQuery(header1 ? doc->getIdent(header1) : doc->getOriginalIdent(),
                      header2 ? doc->getIdent(header2) : doc->getOriginalIdent(), true);
@@ -473,7 +473,7 @@ void kvoctrainApp::slotHeaderCallBack (int header_and_cmd) /*FOLD00*/
 
     case IDH_START_VERB: {
       delete verbQueryDlg;
-      verbQueryDlg = 0;
+      verbQueryDlg = nullptr;
       queryType = TQT_Conjugation;
       slotStartTypeQuery (header1, TQM_VERB);
     }
@@ -481,7 +481,7 @@ void kvoctrainApp::slotHeaderCallBack (int header_and_cmd) /*FOLD00*/
 
     case IDH_START_ARTICLE: {
       delete artQueryDlg;
-      artQueryDlg = 0;
+      artQueryDlg = nullptr;
       queryType = TQT_Articles;
       slotStartTypeQuery (header1, TQM_NOUN);
     }
@@ -489,7 +489,7 @@ void kvoctrainApp::slotHeaderCallBack (int header_and_cmd) /*FOLD00*/
 
     case IDH_START_ADJECTIVE: {
       delete adjQueryDlg;
-      adjQueryDlg = 0;
+      adjQueryDlg = nullptr;
       queryType = TQT_Comparison;
       slotStartTypeQuery (header1, TQM_ADJ);
     }
@@ -497,28 +497,28 @@ void kvoctrainApp::slotHeaderCallBack (int header_and_cmd) /*FOLD00*/
 
     case IDH_START_SYNONYM: {
       delete simpleQueryDlg;
-      simpleQueryDlg = 0;
+      simpleQueryDlg = nullptr;
       slotStartPropertyQuery (header1, TQT_Synonym);
     }
     break;
 
     case IDH_START_ANTONYM: {
       delete simpleQueryDlg;
-      simpleQueryDlg = 0;
+      simpleQueryDlg = nullptr;
       slotStartPropertyQuery (header1, TQT_Antonym);
     }
     break;
 
     case IDH_START_EXAMPLE: {
       delete simpleQueryDlg;
-      simpleQueryDlg = 0;
+      simpleQueryDlg = nullptr;
       slotStartPropertyQuery (header1, TQT_Example);
     }
     break;
 
     case IDH_START_PARAPHRASE: {
       delete simpleQueryDlg;
-      simpleQueryDlg = 0;
+      simpleQueryDlg = nullptr;
       slotStartPropertyQuery (header1, TQT_Paraphrase);
     }
     break;
diff --git a/kvoctrain/kvoctrain/kva_init.cpp b/kvoctrain/kvoctrain/kva_init.cpp
index 67f4d97c..2a4a2bb0 100644
--- a/kvoctrain/kvoctrain/kva_init.cpp
+++ b/kvoctrain/kvoctrain/kva_init.cpp
@@ -43,31 +43,31 @@
 kvoctrainApp::kvoctrainApp(TQWidget *parent, const char *name)
 : TDEMainWindow(parent, name)
 {
-  doc = 0;
-  view = 0;
-  header_m = 0;
-  btimer = 0;
+  doc = nullptr;
+  view = nullptr;
+  header_m = nullptr;
+  btimer = nullptr;
   querymode = false;
   shiftActive = false;
   altActive = false;
   controlActive = false;
   act_lesson = 0;
   searchpos = 0;
-  vslide_label = 0;
-  pron_label = 0;
-  rem_label = 0;
-  type_label = 0;
-  pdlg = 0;
-  pbar = 0;
-  m_newStuff = 0;
-
-  simpleQueryDlg = 0;
-  mcQueryDlg = 0;
-  verbQueryDlg = 0;
-  randomQueryDlg = 0;
-  adjQueryDlg = 0;
-  artQueryDlg = 0;
-  entryDlg = 0;
+  vslide_label = nullptr;
+  pron_label = nullptr;
+  rem_label = nullptr;
+  type_label = nullptr;
+  pdlg = nullptr;
+  pbar = nullptr;
+  m_newStuff = nullptr;
+
+  simpleQueryDlg = nullptr;
+  mcQueryDlg = nullptr;
+  verbQueryDlg = nullptr;
+  randomQueryDlg = nullptr;
+  adjQueryDlg = nullptr;
+  artQueryDlg = nullptr;
+  entryDlg = nullptr;
 
   initStatusBar();
   initActions();
@@ -116,7 +116,7 @@ void kvoctrainApp::initActions()
 
   fileOpenRecent = KStdAction::openRecent(this, TQ_SLOT(slotFileOpenRecent(const KURL&)), actionCollection());
 
-  fileMerge = new TDEAction(i18n("&Merge..."), 0, 0, this, TQ_SLOT(slotFileMerge()), actionCollection(), "file_merge");
+  fileMerge = new TDEAction(i18n("&Merge..."), nullptr, 0, this, TQ_SLOT(slotFileMerge()), actionCollection(), "file_merge");
   fileMerge->setWhatsThis(i18n("Merge an existing vocabulary document with the current one"));
   fileMerge->setToolTip(fileOpen->whatsThis());
 
@@ -197,11 +197,11 @@ void kvoctrainApp::initActions()
   connect(vocabRemoveLanguage->popupMenu(), TQ_SIGNAL(activated(int)), this, TQ_SLOT(slotHeaderCallBack(int)));
   connect(vocabRemoveLanguage->popupMenu(), TQ_SIGNAL(highlighted(int)), this, TQ_SLOT(slotHeaderStatus(int)));
 
-  vocabDocumentProperties = new TDEAction(i18n("Document &Properties"), 0, 0, this, TQ_SLOT(slotDocProps()), actionCollection(), "vocab_document_properties");
+  vocabDocumentProperties = new TDEAction(i18n("Document &Properties"), nullptr, 0, this, TQ_SLOT(slotDocProps()), actionCollection(), "vocab_document_properties");
   vocabDocumentProperties->setWhatsThis(i18n("Edit document properties"));
   vocabDocumentProperties->setToolTip(vocabAppendLanguage->whatsThis());
 
-  vocabLanguageProperties = new TDEAction(i18n("Lan&guage Properties"), 0, 0, this, TQ_SLOT(slotDocPropsLang()), actionCollection(), "vocab_language_properties");
+  vocabLanguageProperties = new TDEAction(i18n("Lan&guage Properties"), nullptr, 0, this, TQ_SLOT(slotDocPropsLang()), actionCollection(), "vocab_language_properties");
   vocabLanguageProperties->setWhatsThis(i18n("Edit language properties in current document"));
   vocabLanguageProperties->setToolTip(vocabSetLanguage->whatsThis());
 
@@ -210,7 +210,7 @@ void kvoctrainApp::initActions()
   connect(lessons, TQ_SIGNAL(highlighted(int)), this, TQ_SLOT(slotChooseLesson(int)));
   lessons->setFocusPolicy(TQWidget::NoFocus);
 
-  vocabLessons = new KWidgetAction(lessons, i18n("Lessons"), 0, this, 0, actionCollection(), "vocab_lessons");
+  vocabLessons = new KWidgetAction(lessons, i18n("Lessons"), 0, this, nullptr, actionCollection(), "vocab_lessons");
   vocabLessons->setWhatsThis(i18n("Choose current lesson"));
   vocabLessons->setToolTip(vocabLessons->whatsThis());
 
@@ -219,7 +219,7 @@ void kvoctrainApp::initActions()
   connect (searchLine, TQ_SIGNAL(returnPressed()), this, TQ_SLOT(slotSearchNext()));
   connect (searchLine, TQ_SIGNAL(textChanged(const TQString&)), this, TQ_SLOT(slotResumeSearch(const TQString&)));
 
-  vocabSearch = new KWidgetAction(searchLine, i18n("Smart Search"), 0, this, 0, actionCollection(), "vocab_search");
+  vocabSearch = new KWidgetAction(searchLine, i18n("Smart Search"), 0, this, nullptr, actionCollection(), "vocab_search");
   vocabSearch->setAutoSized(true);
   vocabSearch->setWhatsThis(i18n("Search vocabulary for specified text "));
   vocabSearch->setToolTip(vocabSearch->whatsThis());
diff --git a/kvoctrain/kvoctrain/kva_io.cpp b/kvoctrain/kvoctrain/kva_io.cpp
index 4ffeff2b..1823c584 100644
--- a/kvoctrain/kvoctrain/kva_io.cpp
+++ b/kvoctrain/kvoctrain/kva_io.cpp
@@ -132,9 +132,9 @@ void kvoctrainApp::slotFileQuit()
 
 void kvoctrainApp::slotProgress(kvoctrainDoc *curr_doc, int percent)
 {
-  if (pdlg != 0)
+  if (pdlg)
     pdlg->setValue (curr_doc, percent);
-  else if (pbar != 0)
+  else if (pbar != nullptr)
     pbar->setValue (percent);
   tdeApp->processEvents();
 }
@@ -157,10 +157,10 @@ void kvoctrainApp::slotFileNew()
   slotStatusMsg(i18n("Creating new file..."));
 
   if (queryExit() ) {
-    view->setView (0, langset);
+    view->setView (nullptr, langset);
     delete doc;
     TQString name = "";
-    doc = new kvoctrainDoc (this, 0 /*KURL(name)*/);
+    doc = new kvoctrainDoc (this, nullptr /*KURL(name)*/);
     loadDocProps(doc);
     if (doc->numLangs() == 0) {
       TQString l = "en";
@@ -193,9 +193,9 @@ void kvoctrainApp::loadfileFromPath(const KURL & url, bool addRecent)
 {
     if (!url.path().isEmpty())
     {
-      view->setView(0, langset);
+      view->setView(nullptr, langset);
       delete doc;
-      doc = 0;
+      doc = nullptr;
 
       TQString format = i18n("Loading %1");
       TQString msg = format.arg(url.path());
@@ -491,7 +491,7 @@ void kvoctrainApp::slotFileMerge()
 
 void kvoctrainApp::slotFileSave()
 {
-  if (entryDlg != 0)
+  if (entryDlg)
     commitEntryDlg(false);
 
   if (doc->URL().fileName() == i18n("Untitled") ) {
@@ -589,14 +589,14 @@ void kvoctrainApp::slotFileSaveAs()
 {
   slotStatusMsg(i18n("Saving file under new filename..."));
 
-  if (entryDlg != 0)
+  if (entryDlg)
     commitEntryDlg(false);
 
   KURL url = KFileDialog::getSaveURL(TQString(), FILTER_WPATTERN, parentWidget(), i18n("Save Vocabulary As"));
 
   if (!url.isEmpty() ) {
     TQFileInfo fileinfo(url.path());
-    if (fileinfo.exists() && KMessageBox::warningContinueCancel(0,
+    if (fileinfo.exists() && KMessageBox::warningContinueCancel(nullptr,
        i18n("<qt>The file<br><b>%1</b><br>already exists. Do you want to overwrite it?</qt>")
        .arg(url.path()),TQString(),i18n("Overwrite")) == KMessageBox::Cancel)
     {
@@ -625,7 +625,7 @@ void kvoctrainApp::slotFileSaveAs()
 
 void kvoctrainApp::slotSaveSelection ()
 {
-  if (entryDlg != 0)
+  if (entryDlg)
     commitEntryDlg(false);
 
   slotStatusMsg(i18n("Saving selected area under new filename..."));
@@ -649,7 +649,7 @@ void kvoctrainApp::slotSaveSelection ()
   if (!url.isEmpty() )
   {
     TQFileInfo fileinfo(url.path());
-    if (fileinfo.exists() && KMessageBox::warningContinueCancel(0,
+    if (fileinfo.exists() && KMessageBox::warningContinueCancel(nullptr,
        i18n("<qt>The file<br><b>%1</b><br>already exists. Do you want to overwrite it?</qt>")
        .arg(url.path()),TQString(),i18n("Overwrite")) == KMessageBox::Cancel)
     {
@@ -691,7 +691,7 @@ void kvoctrainApp::removeProgressBar ()
     statusBar()->clear ();
     statusBar()->removeWidget(pbar);
     delete pbar;
-    pbar = 0;
+    pbar = nullptr;
     delete pdlg;
-    pdlg = 0;
+    pdlg = nullptr;
 }
diff --git a/kvoctrain/kvoctrain/kva_query.cpp b/kvoctrain/kvoctrain/kva_query.cpp
index 273b97f1..381abd30 100644
--- a/kvoctrain/kvoctrain/kva_query.cpp
+++ b/kvoctrain/kvoctrain/kva_query.cpp
@@ -194,7 +194,7 @@ void kvoctrainApp::slotStartPropertyQuery(int col, QueryType property)
 void kvoctrainApp::slotTimeOutProperty(QueryDlgBase::Result res)
 {
 
-  if (simpleQueryDlg == 0) {
+  if (!simpleQueryDlg) {
     kdError() << "simpleQueryDlg == 0\n";
     slotStopQuery(true);
     return;
@@ -487,7 +487,7 @@ void kvoctrainApp::slotTimeOutType(QueryDlgBase::Result res)
   kvoctrainExpr *exp = random_expr1[random_query_nr].exp;
 
   if (queryType == TQT_Conjugation) {
-    if (verbQueryDlg == 0) {
+    if (!verbQueryDlg) {
       kdError() << "verbQueryDlg == 0\n";
       slotStopQuery(true);
       return;
@@ -506,7 +506,7 @@ void kvoctrainApp::slotTimeOutType(QueryDlgBase::Result res)
     verbQueryDlg->initFocus();
   }
   else if (queryType == TQT_Articles) {
-    if (artQueryDlg == 0) {
+    if (!artQueryDlg) {
       kdError() << "artQueryDlg == 0\n";
       slotStopQuery(true);
       return;
@@ -523,7 +523,7 @@ void kvoctrainApp::slotTimeOutType(QueryDlgBase::Result res)
     artQueryDlg->initFocus();
   }
   else if (queryType == TQT_Comparison) {
-    if (adjQueryDlg == 0) {
+    if (!adjQueryDlg) {
       kdError() << "adjQueryDlg == 0\n";
       slotStopQuery(true);
       return;
@@ -702,7 +702,7 @@ void kvoctrainApp::slotTimeOutQuery(QueryDlgBase::Result res)
 
   if (res != QueryDlgBase::StopIt) {
     doc->setModified();
-    time_t now = time(0);
+    time_t now = time(nullptr);
     if (oindex == 0) {
       exp->incQueryCount(tindex, false);
       exp->setQueryDate(tindex, now, false);
@@ -958,7 +958,7 @@ void kvoctrainApp::slotTimeOutQuery(QueryDlgBase::Result res)
   }
 
   if (queryType == TQT_Random) {
-    if (randomQueryDlg == 0) {
+    if (!randomQueryDlg) {
       kdError() << "randomQueryDlg == 0\n";
       slotStopQuery(true);
       return;
@@ -976,7 +976,7 @@ void kvoctrainApp::slotTimeOutQuery(QueryDlgBase::Result res)
       randomQueryDlg->initFocus();
   }
   else if (queryType == TQT_Multiple) {
-    if (mcQueryDlg == 0) {
+    if (!mcQueryDlg) {
       kdError() << "mcQueryDlg == 0\n";
       slotStopQuery(true);
       return;
@@ -1006,12 +1006,12 @@ void kvoctrainApp::slotStopQuery(bool )
     delete adjQueryDlg;
     delete artQueryDlg;
 
-    simpleQueryDlg = 0;
-    mcQueryDlg = 0;
-    verbQueryDlg = 0;
-    randomQueryDlg = 0;
-    adjQueryDlg = 0;
-    artQueryDlg = 0;
+    simpleQueryDlg = nullptr;
+    mcQueryDlg = nullptr;
+    verbQueryDlg = nullptr;
+    randomQueryDlg = nullptr;
+    adjQueryDlg = nullptr;
+    artQueryDlg = nullptr;
 
     querying = false;
     querymode = false;
diff --git a/kvoctrain/kvoctrain/kvoctrain.cpp b/kvoctrain/kvoctrain/kvoctrain.cpp
index 0b7dc77c..8e07b00c 100644
--- a/kvoctrain/kvoctrain/kvoctrain.cpp
+++ b/kvoctrain/kvoctrain/kvoctrain.cpp
@@ -94,17 +94,17 @@ void kvoctrainApp::slotCurrentCellChanged(int row, int col)
   else
     expr = doc->getEntry(row);
 
-  if (rem_label != 0)
+  if (rem_label)
     rem_label->setText(i18n("Abbreviation for R)emark","R: %1")
                        .arg(noData ? TQString() : expr->getRemark(col)));
-  if (pron_label != 0)
+  if (pron_label)
     pron_label->setText(i18n("Abbreviation for P)ronouncation","P: %1")
                         .arg(noData ? TQString() : expr->getPronunce(col)));
-  if (type_label != 0)
+  if (type_label)
     type_label->setText(i18n("Abbreviation for T)ype of word", "T: %1")
                         .arg(noData ? TQString() : QueryManager::typeStr(expr->getType(col))));
 
-  if (entryDlg != 0) {
+  if (entryDlg) {
     if (noData)
       entryDlg->setEnabled(EntryDlg::EnableOnlyCommon);
     else {
@@ -171,7 +171,7 @@ void kvoctrainApp::slotEditCallBack(int res)
 void kvoctrainApp::commitEntryDlg(bool force)
 {
 //  cout << "ced\n";
-   if (entryDlg == 0) {
+   if (!entryDlg) {
      kdError() << "kvoctrainApp::commitEntryDlg: entryDlg == 0\n";
      return;
    }
@@ -303,7 +303,7 @@ void kvoctrainApp::commitEntryDlg(bool force)
 
 void kvoctrainApp::createEntryDlg(int row, int col)
 {
-   if (entryDlg != 0) {
+   if (entryDlg) {
      kdError() << "kvoctrainApp::createEntryDlg: entryDlg != 0\n";
      return;
    }
@@ -429,10 +429,10 @@ void kvoctrainApp::createEntryDlg(int row, int col)
 void kvoctrainApp::removeEntryDlg()
 {
 //  cout << "red\n";
-  if (entryDlg != 0) {
+  if (entryDlg) {
     commitEntryDlg(false);
     delete entryDlg;
-    entryDlg = 0;
+    entryDlg = nullptr;
   }
 
   view->getTable()->setReadOnly(false);
@@ -441,7 +441,7 @@ void kvoctrainApp::removeEntryDlg()
 
 void kvoctrainApp::slotEditEntry (int row, int col)
 {
-   if (entryDlg == 0) {
+   if (!entryDlg) {
      createEntryDlg(row, col);
      return;
    }
@@ -457,7 +457,7 @@ void kvoctrainApp::slotEditEntry (int row, int col)
 void kvoctrainApp::setDataEntryDlg (int row, int col)
 {
 //  cout << "sded\n";
-   if (entryDlg == 0) {
+   if (!entryDlg) {
      kdError() << "kvoctrainApp::setDataEntryDlg: entryDlg == 0\n";
      return;
    }
@@ -469,7 +469,7 @@ void kvoctrainApp::setDataEntryDlg (int row, int col)
 
    kvoctrainExpr *expr = doc->getEntry(row);
 
-   if (expr == 0)
+   if (!expr)
      return; // entry delete in the meantime
 
    int lesson = expr->getLesson();
@@ -585,7 +585,7 @@ void kvoctrainApp::slotDocProps ()
    vector<int> old_lessoninquery = doc->getLessonsInQuery();
 
    DocPropsDlg ddlg (doc,
-                     0,
+                     nullptr,
                      lessons,
                      doc->getTitle(),
                      doc->getAuthor(),
@@ -1207,7 +1207,7 @@ void kvoctrainApp::aboutToShowLearn()
 
 void kvoctrainApp::aboutToShowVocabAppendLanguage()
 {
-  if (doc != 0)
+  if (doc)
   {
     vocabAppendLanguage->clear();
     TQPopupMenu * add_m = vocabAppendLanguage->popupMenu();
@@ -1236,7 +1236,7 @@ void kvoctrainApp::aboutToShowVocabAppendLanguage()
 
 void kvoctrainApp::aboutToShowVocabSetLanguage()
 {
-  if (doc != 0)
+  if (doc)
   {
     vocabSetLanguage->clear();
     TQPopupMenu * set_m = vocabSetLanguage->popupMenu();
@@ -1281,7 +1281,7 @@ void kvoctrainApp::aboutToShowVocabSetLanguage()
 
 void kvoctrainApp::aboutToShowVocabRemoveLanguage()
 {
-  if (doc != 0)
+  if (doc)
   {
     vocabRemoveLanguage->clear();
     TQPopupMenu * remove_m = vocabRemoveLanguage->popupMenu();
@@ -1315,7 +1315,7 @@ void kvoctrainApp::slotStatusHelpMsg(const TQString &text)
 {
   ///////////////////////////////////////////////////////////////////
   // change status message of whole statusbar temporary (text, msec)
-  if (pbar == 0 || !pbar->isVisible() )
+  if (!pbar || !pbar->isVisible() )
     statusBar()->message(text, 3000);
 }
 
diff --git a/kvoctrain/kvoctrain/kvoctraintable.cpp b/kvoctrain/kvoctrain/kvoctraintable.cpp
index 5462c709..2c2dc0e2 100644
--- a/kvoctrain/kvoctrain/kvoctraintable.cpp
+++ b/kvoctrain/kvoctrain/kvoctraintable.cpp
@@ -43,7 +43,7 @@ KVocTrainTable::KVocTrainTable(kvoctrainDoc *doc, const LangSet *ls, TQWidget *p
   : TQTable(parent, name), langs(ls)
 {
   m_doc = doc;
-  defaultItem = 0;
+  defaultItem = nullptr;
   setNumCols(m_doc->numLangs());
   setNumRows(m_doc->numEntries());
 
@@ -212,7 +212,7 @@ kvoctrainExpr *KVocTrainTable::getRow(int row)
   if (m_doc)
     return m_doc->getEntry(row);
   else
-    return 0;
+    return nullptr;
 }
 
 void KVocTrainTable::setDoc(kvoctrainDoc * rows)
@@ -221,7 +221,7 @@ void KVocTrainTable::setDoc(kvoctrainDoc * rows)
     endEdit(defaultItem->row(), defaultItem->col(), true, false);
 
   KVocTrainTableItem *d = defaultItem;
-  defaultItem = 0;
+  defaultItem = nullptr;
 
   if (rows) {
     m_doc = rows;
@@ -232,10 +232,10 @@ void KVocTrainTable::setDoc(kvoctrainDoc * rows)
   else {
     setNumRows(0);
     setNumCols(1+KV_EXTRA_COLS);
-    m_doc = 0;
+    m_doc = nullptr;
   }
 
-  if (d == 0) {
+  if (!d) {
     defaultItem = new KVocTrainTableItem(this, TQTableItem::OnTyping, rows);
   }
   else {
@@ -387,7 +387,7 @@ void KVocTrainTable::paintCell(TQPainter * p, int row, int col, const TQRect & c
       case KV_COL_LESS: // lesson
       {
         TQString less_str;
-        if (m_doc != 0 && expr->getLesson() != 0)
+        if (m_doc != nullptr && expr->getLesson() != 0)
           less_str = m_doc->getLessonDescr(expr->getLesson());
         p->drawText( 3, fontpos, w, p->fontMetrics().lineSpacing(), TQt::AlignLeft, less_str);
       }
diff --git a/kvoctrain/kvoctrain/kvoctraintableitem.cpp b/kvoctrain/kvoctrain/kvoctraintableitem.cpp
index 565af26f..c328b344 100644
--- a/kvoctrain/kvoctrain/kvoctraintableitem.cpp
+++ b/kvoctrain/kvoctrain/kvoctraintableitem.cpp
@@ -56,7 +56,7 @@ void KVocTrainTableItem::setDoc(kvoctrainDoc *doc)
 
 TQWidget *KVocTrainTableItem::createEditor() const
 {
-  if (m_doc != 0 && m_doc->numEntries() != 0 && row() >= 0 && col() >= 0) {
+  if (m_doc && m_doc->numEntries() != 0 && row() >= 0 && col() >= 0) {
     switch (col()) {
       case KV_COL_LESS: {
         TQComboBox *lessonbox = new TQComboBox(table()->viewport() );
@@ -99,13 +99,13 @@ TQWidget *KVocTrainTableItem::createEditor() const
       }
     }
   }
-  return 0;
+  return nullptr;
 }
 
 
 void KVocTrainTableItem::setContentFromEditor( TQWidget *w )
 {
-  if (m_doc != 0) {
+  if (m_doc) {
     if ( w->inherits( "TQComboBox" ) ) {
       if (col() == KV_COL_MARK) {
         TQComboBox *statebox = (TQComboBox*) w;
diff --git a/kvoctrain/kvoctrain/kvoctrainview.cpp b/kvoctrain/kvoctrain/kvoctrainview.cpp
index ac73193d..3e591288 100644
--- a/kvoctrain/kvoctrain/kvoctrainview.cpp
+++ b/kvoctrain/kvoctrain/kvoctrainview.cpp
@@ -95,7 +95,7 @@ void kvoctrainView::resizeEvent (TQResizeEvent *r_ev)
 {
   TQWidget::resizeEvent(r_ev);
 
-  if (r_ev == 0)
+  if (!r_ev)
     return;
 
   TQHeader *header = m_table->horizontalHeader();
@@ -158,7 +158,7 @@ void kvoctrainView::resizeEvent (TQResizeEvent *r_ev)
     break;
   }
 
-  if (m_doc != 0) {
+  if (m_doc) {
     for (int i = KV_COL_ORG; i < m_table->numCols(); i++)
     {
       m_doc->setSizeHint (i - KV_EXTRA_COLS, header->sectionSize(i));
@@ -248,7 +248,7 @@ void kvoctrainView::setHeaderProp (int id, const TQString &name, const TQString
     mask.fill(TQt::black);
 
     bitBlt(&arrow, 0, 0, &pix, 0, 0);
-    if (pix.mask() != 0)
+    if (pix.mask())
       bitBlt(&mask, 0, 0, pix.mask(), 0, 0);
     else {
       TQBitmap bmp(pix.createHeuristicMask());
diff --git a/kvoctrain/kvoctrain/kvoctrainview.h b/kvoctrain/kvoctrain/kvoctrainview.h
index 6e441111..bb30d1d8 100644
--- a/kvoctrain/kvoctrain/kvoctrainview.h
+++ b/kvoctrain/kvoctrain/kvoctrainview.h
@@ -55,7 +55,7 @@ class kvoctrainView : public TQWidget
 
  public:
   /** Constructor for the main view */
-  kvoctrainView(kvoctrainDoc* doc, const LangSet &ls, kvoctrainApp *parent = 0);
+  kvoctrainView(kvoctrainDoc* doc, const LangSet &ls, kvoctrainApp *parent = nullptr);
 
   /** Destructor for the main view */
   ~kvoctrainView();
diff --git a/kvoctrain/kvoctrain/kvt-core/QueryManager.cpp b/kvoctrain/kvoctrain/kvt-core/QueryManager.cpp
index 3baf5d6e..40fa2e76 100644
--- a/kvoctrain/kvoctrain/kvt-core/QueryManager.cpp
+++ b/kvoctrain/kvoctrain/kvt-core/QueryManager.cpp
@@ -85,7 +85,7 @@ static t_type_rel InternalTypeRelations [] =
   { TQM_VERB  TQM_TYPE_DIV TQM_VERB_IRR, I18N_NOOP("Verb Irregular") },
   { TQM_VERB  TQM_TYPE_DIV TQM_VERB_REG, I18N_NOOP("Verb Regular") },
 
-  { 0, 0 }  // the end
+  { nullptr, nullptr }  // the end
 };
 
 
@@ -399,8 +399,8 @@ vector<TypeRelation> QueryManager::getRelation (bool only_maintypes)
 
 
   t_type_rel *type = InternalTypeRelations;
-  while (type->short_ref != 0) {
-    if (!only_maintypes || strstr (type->short_ref, TQM_TYPE_DIV) == 0)
+  while (type->short_ref) {
+    if (!only_maintypes || !strstr(type->short_ref, TQM_TYPE_DIV))
       vec.push_back(TypeRelation(type->short_ref, i18n(type->long_ref)));
     type++;
   }
@@ -422,7 +422,7 @@ TQString QueryManager::typeStr (const TQString id)
   }
   else {
     t_type_rel *type = InternalTypeRelations;
-    while (type->short_ref != 0) {
+    while (type->short_ref) {
       if (type->short_ref == id)
         return i18n(type->long_ref);
       type++;
@@ -438,7 +438,7 @@ bool QueryManager::compareBlocking (int grade, int date, bool use_it)
    if (grade == KV_NORM_GRADE || cmp == 0 || !use_it) // don't care || all off
      return true;
    else {
-     time_t now = time(0);
+     time_t now = time(nullptr);
      return date+cmp < now;
    }
 }
@@ -450,7 +450,7 @@ bool QueryManager::compareExpiring (int grade, int date, bool use_it)
    if (grade == KV_NORM_GRADE || cmp == 0 || !use_it) // don't care || all off
      return false;
    else {
-     time_t now = time(0);
+     time_t now = time(nullptr);
      return date+cmp < now;
    }
 }
@@ -458,7 +458,7 @@ bool QueryManager::compareExpiring (int grade, int date, bool use_it)
 
 bool QueryManager::compareDate (CompType type, time_t qd, time_t limit)
 {
-   time_t now = time(0);
+   time_t now = time(nullptr);
    bool erg = true;
    switch (type) {
     case DontCare: erg = true;
diff --git a/kvoctrain/kvoctrain/kvt-core/UsageManager.cpp b/kvoctrain/kvoctrain/kvt-core/UsageManager.cpp
index 9a6a8591..e7b95027 100644
--- a/kvoctrain/kvoctrain/kvt-core/UsageManager.cpp
+++ b/kvoctrain/kvoctrain/kvt-core/UsageManager.cpp
@@ -51,55 +51,55 @@ struct internalRelation_t
 
 static internalRelation_t InternalUsageRelations [] =
 {
-  { UL_AM,        0,   I18N_NOOP("Am."),      I18N_NOOP("Americanism")},
-  { UL_ABBR,      0,   I18N_NOOP("abbr."),    I18N_NOOP("abbreviation")},
-  { UL_ANAT,      0,   I18N_NOOP("anat."),    I18N_NOOP("anatomy")},
-  { UL_ASTR,      0,   I18N_NOOP("astr."),    I18N_NOOP("astronomy")},
-  { UL_BIOL,      0,   I18N_NOOP("biol."),    I18N_NOOP("biology")},
-  { UL_BS,        0,   I18N_NOOP("b.s."),     I18N_NOOP("bad sense")},
-  { UL_CONTP,     0,   I18N_NOOP("contp."),   I18N_NOOP("contemptuously")},
-  { UL_ECCL,      0,   I18N_NOOP("eccl."),    I18N_NOOP("ecclesiastical")},
-  { UL_FIG,       0,   I18N_NOOP("fig."),     I18N_NOOP("figuratively")},
-  { UL_GEOL,      0,   I18N_NOOP("geol."),    I18N_NOOP("geology")},
-  { UL_HIST,      0,   I18N_NOOP("hist."),    I18N_NOOP("historical")},
-  { UL_ICHT,      0,   I18N_NOOP("icht."),    I18N_NOOP("ichthyology")},
-  { UL_IFML,      0,   I18N_NOOP("ifml."),    I18N_NOOP("informal")},
-  { UL_IRONIC,    0,   I18N_NOOP("iro."),     I18N_NOOP("ironic")},
-  { UL_IRR,       0,   I18N_NOOP("irr."),     I18N_NOOP("irregular")},
-  { UL_LIT,       0,   I18N_NOOP("lit."),     I18N_NOOP("literary")},
-  { UL_META,      0,   I18N_NOOP("metall."),  I18N_NOOP("metallurgy")},
-  { UL_METEO,     0,   I18N_NOOP("meteor."),  I18N_NOOP("meteorology")},
-  { UL_MIN,       0,   I18N_NOOP("min."),     I18N_NOOP("mineralogy")},
-  { UL_MOT,       0,   I18N_NOOP("mot."),     I18N_NOOP("motoring")},
-  { UL_MOUNT,     0,   I18N_NOOP("mount."),   I18N_NOOP("mountaineering")},
-  { UL_MYT,       0,   I18N_NOOP("myth."),    I18N_NOOP("mythology")},
-  { UL_NPR,       0,   I18N_NOOP2("abbreviation: proper name",  "npr."),  I18N_NOOP("proper name")},
-  { UL_OPT,       0,   I18N_NOOP("opt."),     I18N_NOOP("optics")},
-  { UL_ORN,       0,   I18N_NOOP("orn."),     I18N_NOOP("ornithology")},
-  { UL_OS,        0,   I18N_NOOP("o.s."),     I18N_NOOP("oneself")},
-  { UL_P,         0,   I18N_NOOP("pers."),    I18N_NOOP("person")},
-  { UL_PARL,      0,   I18N_NOOP("parl."),    I18N_NOOP("parliamentary")},
-  { UL_PHARM,     0,   I18N_NOOP("pharm."),   I18N_NOOP("pharmacy")},
-  { UL_PHLS,      0,   I18N_NOOP("phls."),    I18N_NOOP("philosophy")},
-  { UL_PHOT,      0,   I18N_NOOP("phot."),    I18N_NOOP("photography")},
-  { UL_PHYS,      0,   I18N_NOOP("phys."),    I18N_NOOP("physics")},
-  { UL_PHYSIOL,   0,   I18N_NOOP("physiol."), I18N_NOOP("physiology")},
-  { UL_PL,        0,   I18N_NOOP("pl."),      I18N_NOOP("plural")},
-  { UL_POET,      0,   I18N_NOOP("poet."),    I18N_NOOP("poetry")},
-  { UL_POL,       0,   I18N_NOOP("pol."),     I18N_NOOP("politics")},
-  { UL_PROV,      0,   I18N_NOOP("prov."),    I18N_NOOP("provincialism")},
-  { UL_PSYCH,     0,   I18N_NOOP("psych."),   I18N_NOOP("psychology")},
-  { UL_RHET,      0,   I18N_NOOP("rhet."),    I18N_NOOP("rhetoric")},
-  { UL_SURV,      0,   I18N_NOOP("surv."),    I18N_NOOP("surveying")},
-  { UL_TEL,       0,   I18N_NOOP("tel."),     I18N_NOOP("telegraphy")},
-  { UL_TELEPH,    0,   I18N_NOOP("teleph."),  I18N_NOOP("telephony")},
-  { UL_THEA,      0,   I18N_NOOP("thea."),    I18N_NOOP("theater")},
-  { UL_TYP,       0,   I18N_NOOP("typ."),     I18N_NOOP("typography")},
-  { UL_UNIV,      0,   I18N_NOOP("univ."),    I18N_NOOP("university")},
-  { UL_VET,       0,   I18N_NOOP("vet."),     I18N_NOOP("veterinary medicine")},
-  { UL_ZO,        0,   I18N_NOOP("zo."),      I18N_NOOP("zoology")},
+  { UL_AM,        nullptr,   I18N_NOOP("Am."),      I18N_NOOP("Americanism")},
+  { UL_ABBR,      nullptr,   I18N_NOOP("abbr."),    I18N_NOOP("abbreviation")},
+  { UL_ANAT,      nullptr,   I18N_NOOP("anat."),    I18N_NOOP("anatomy")},
+  { UL_ASTR,      nullptr,   I18N_NOOP("astr."),    I18N_NOOP("astronomy")},
+  { UL_BIOL,      nullptr,   I18N_NOOP("biol."),    I18N_NOOP("biology")},
+  { UL_BS,        nullptr,   I18N_NOOP("b.s."),     I18N_NOOP("bad sense")},
+  { UL_CONTP,     nullptr,   I18N_NOOP("contp."),   I18N_NOOP("contemptuously")},
+  { UL_ECCL,      nullptr,   I18N_NOOP("eccl."),    I18N_NOOP("ecclesiastical")},
+  { UL_FIG,       nullptr,   I18N_NOOP("fig."),     I18N_NOOP("figuratively")},
+  { UL_GEOL,      nullptr,   I18N_NOOP("geol."),    I18N_NOOP("geology")},
+  { UL_HIST,      nullptr,   I18N_NOOP("hist."),    I18N_NOOP("historical")},
+  { UL_ICHT,      nullptr,   I18N_NOOP("icht."),    I18N_NOOP("ichthyology")},
+  { UL_IFML,      nullptr,   I18N_NOOP("ifml."),    I18N_NOOP("informal")},
+  { UL_IRONIC,    nullptr,   I18N_NOOP("iro."),     I18N_NOOP("ironic")},
+  { UL_IRR,       nullptr,   I18N_NOOP("irr."),     I18N_NOOP("irregular")},
+  { UL_LIT,       nullptr,   I18N_NOOP("lit."),     I18N_NOOP("literary")},
+  { UL_META,      nullptr,   I18N_NOOP("metall."),  I18N_NOOP("metallurgy")},
+  { UL_METEO,     nullptr,   I18N_NOOP("meteor."),  I18N_NOOP("meteorology")},
+  { UL_MIN,       nullptr,   I18N_NOOP("min."),     I18N_NOOP("mineralogy")},
+  { UL_MOT,       nullptr,   I18N_NOOP("mot."),     I18N_NOOP("motoring")},
+  { UL_MOUNT,     nullptr,   I18N_NOOP("mount."),   I18N_NOOP("mountaineering")},
+  { UL_MYT,       nullptr,   I18N_NOOP("myth."),    I18N_NOOP("mythology")},
+  { UL_NPR,       nullptr,   I18N_NOOP2("abbreviation: proper name",  "npr."),  I18N_NOOP("proper name")},
+  { UL_OPT,       nullptr,   I18N_NOOP("opt."),     I18N_NOOP("optics")},
+  { UL_ORN,       nullptr,   I18N_NOOP("orn."),     I18N_NOOP("ornithology")},
+  { UL_OS,        nullptr,   I18N_NOOP("o.s."),     I18N_NOOP("oneself")},
+  { UL_P,         nullptr,   I18N_NOOP("pers."),    I18N_NOOP("person")},
+  { UL_PARL,      nullptr,   I18N_NOOP("parl."),    I18N_NOOP("parliamentary")},
+  { UL_PHARM,     nullptr,   I18N_NOOP("pharm."),   I18N_NOOP("pharmacy")},
+  { UL_PHLS,      nullptr,   I18N_NOOP("phls."),    I18N_NOOP("philosophy")},
+  { UL_PHOT,      nullptr,   I18N_NOOP("phot."),    I18N_NOOP("photography")},
+  { UL_PHYS,      nullptr,   I18N_NOOP("phys."),    I18N_NOOP("physics")},
+  { UL_PHYSIOL,   nullptr,   I18N_NOOP("physiol."), I18N_NOOP("physiology")},
+  { UL_PL,        nullptr,   I18N_NOOP("pl."),      I18N_NOOP("plural")},
+  { UL_POET,      nullptr,   I18N_NOOP("poet."),    I18N_NOOP("poetry")},
+  { UL_POL,       nullptr,   I18N_NOOP("pol."),     I18N_NOOP("politics")},
+  { UL_PROV,      nullptr,   I18N_NOOP("prov."),    I18N_NOOP("provincialism")},
+  { UL_PSYCH,     nullptr,   I18N_NOOP("psych."),   I18N_NOOP("psychology")},
+  { UL_RHET,      nullptr,   I18N_NOOP("rhet."),    I18N_NOOP("rhetoric")},
+  { UL_SURV,      nullptr,   I18N_NOOP("surv."),    I18N_NOOP("surveying")},
+  { UL_TEL,       nullptr,   I18N_NOOP("tel."),     I18N_NOOP("telegraphy")},
+  { UL_TELEPH,    nullptr,   I18N_NOOP("teleph."),  I18N_NOOP("telephony")},
+  { UL_THEA,      nullptr,   I18N_NOOP("thea."),    I18N_NOOP("theater")},
+  { UL_TYP,       nullptr,   I18N_NOOP("typ."),     I18N_NOOP("typography")},
+  { UL_UNIV,      nullptr,   I18N_NOOP("univ."),    I18N_NOOP("university")},
+  { UL_VET,       nullptr,   I18N_NOOP("vet."),     I18N_NOOP("veterinary medicine")},
+  { UL_ZO,        nullptr,   I18N_NOOP("zo."),      I18N_NOOP("zoology")},
 //{ UL_,          0,   I18N_NOOP(""),         I18N_NOOP("")},
-  { 0, 0, 0, 0 } // the end
+  { nullptr, nullptr, nullptr, nullptr } // the end
 };
 
 
@@ -119,9 +119,9 @@ vector<UsageRelation> UsageManager::getRelation ()
   }
 
   internalRelation_t *usage = InternalUsageRelations;
-  while (usage->ident != 0) {
+  while (usage->ident) {
     TQString s;
-    if (usage->context == 0)
+    if (!usage->context)
       s = i18n(usage->shortid);
     else
       s = i18n(usage->context, usage->shortid);
diff --git a/kvoctrain/kvoctrain/kvt-core/kvd_csv.cpp b/kvoctrain/kvoctrain/kvt-core/kvd_csv.cpp
index af029b9e..e89edd3c 100644
--- a/kvoctrain/kvoctrain/kvt-core/kvd_csv.cpp
+++ b/kvoctrain/kvoctrain/kvt-core/kvd_csv.cpp
@@ -288,6 +288,6 @@ void kvoctrainDoc::errorCsv (int /*line*/, const TQString &text )
    TQApplication::setOverrideCursor( arrowCursor, true );
    TQString s = tdeApp->makeStdCaption(i18n("Error in csv file"));
    TQString msg = text;
-   KMessageBox::error( 0, msg, s);
+   KMessageBox::error( nullptr, msg, s);
    TQApplication::restoreOverrideCursor();
 }
diff --git a/kvoctrain/kvoctrain/kvt-core/kvd_lex.cpp b/kvoctrain/kvoctrain/kvt-core/kvd_lex.cpp
index 7e6b59e8..8c6445a5 100644
--- a/kvoctrain/kvoctrain/kvt-core/kvd_lex.cpp
+++ b/kvoctrain/kvoctrain/kvt-core/kvd_lex.cpp
@@ -390,6 +390,6 @@ void kvoctrainDoc::errorLex (int /*line*/, const TQString &text )
    TQApplication::setOverrideCursor( arrowCursor, true );
    TQString s = tdeApp->makeStdCaption(i18n("Error in lex file"));
    TQString msg = text;
-   KMessageBox::error(0, msg, s);
+   KMessageBox::error(nullptr, msg, s);
    TQApplication::restoreOverrideCursor();
 }
diff --git a/kvoctrain/kvoctrain/kvt-core/kvd_rb_kvtml1.cpp b/kvoctrain/kvoctrain/kvt-core/kvd_rb_kvtml1.cpp
index 55973e75..3c55bd43 100644
--- a/kvoctrain/kvoctrain/kvt-core/kvd_rb_kvtml1.cpp
+++ b/kvoctrain/kvoctrain/kvt-core/kvd_rb_kvtml1.cpp
@@ -838,7 +838,7 @@ bool kvoctrainDoc::unknownAttribute (int line, const TQString &name,
 
    TQApplication::setOverrideCursor( arrowCursor, true );
    TQString s = tdeApp->makeStdCaption(i18n("Unknown attribute"));
-   bool result = (KMessageBox::warningContinueCancel(0, ln+msg, s) == KMessageBox::Continue);
+   bool result = (KMessageBox::warningContinueCancel(nullptr, ln+msg, s) == KMessageBox::Continue);
    TQApplication::restoreOverrideCursor();
    return result;
 }
@@ -860,7 +860,7 @@ void kvoctrainDoc::unknownElement (int line, const TQString &elem )
    TQString msg = format.arg(elem);
    TQApplication::setOverrideCursor( arrowCursor, true );
    TQString s = tdeApp->makeStdCaption(i18n("Unknown element"));
-   KMessageBox::sorry(0, ln+msg, s);
+   KMessageBox::sorry(nullptr, ln+msg, s);
    TQApplication::restoreOverrideCursor();
 }
 
@@ -872,7 +872,7 @@ void kvoctrainDoc::errorKvtMl (int line, const TQString &text )
    TQString ln = i18n("File:\t%1\nLine:\t%2\n").arg(URL().path()).arg(line);
 
    TQString msg = text;
-   KMessageBox::error(0, ln+msg, s);
+   KMessageBox::error(nullptr, ln+msg, s);
    TQApplication::restoreOverrideCursor();
 }
 
@@ -883,6 +883,6 @@ void kvoctrainDoc::warningKvtMl (int line, const TQString &text )
    TQString s = tdeApp->makeStdCaption(i18n("Warning"));
    TQString ln = i18n("File:\t%1\nLine:\t%2\n").arg(URL().path()).arg(line);
    TQString msg = text;
-   KMessageBox::information(0, ln+msg, s);
+   KMessageBox::information(nullptr, ln+msg, s);
    TQApplication::restoreOverrideCursor();
 }
diff --git a/kvoctrain/kvoctrain/kvt-core/kvd_vcb.cpp b/kvoctrain/kvoctrain/kvt-core/kvd_vcb.cpp
index 43ad8b7e..642a9c84 100644
--- a/kvoctrain/kvoctrain/kvt-core/kvd_vcb.cpp
+++ b/kvoctrain/kvoctrain/kvt-core/kvd_vcb.cpp
@@ -121,8 +121,8 @@ bool kvoctrainDoc::loadFromVcb (TQTextStream& is)
       TQString o, t;
       grade_t ograde = KV_LEV1_GRADE,
               tgrade = KV_LEV1_GRADE;
-      size_t  odate = time(0),
-              tdate = time(0);
+      size_t  odate = time(nullptr),
+              tdate = time(nullptr);
 
       int pos = s.find (VCB_SEPARATOR);
       if (pos >= 0) {
@@ -194,6 +194,6 @@ void kvoctrainDoc::errorVcb (int /*line*/, const TQString &text )
    TQApplication::setOverrideCursor( arrowCursor, true );
    TQString s = tdeApp->makeStdCaption(i18n("Error in vocabbox file"));
    TQString msg = text;
-   KMessageBox::error(0, msg, s);
+   KMessageBox::error(nullptr, msg, s);
    TQApplication::restoreOverrideCursor();
 }
diff --git a/kvoctrain/kvoctrain/kvt-core/kvoctraindoc.cpp b/kvoctrain/kvoctrain/kvt-core/kvoctraindoc.cpp
index 1139384d..2ab407ca 100644
--- a/kvoctrain/kvoctrain/kvt-core/kvoctraindoc.cpp
+++ b/kvoctrain/kvoctrain/kvt-core/kvoctraindoc.cpp
@@ -100,12 +100,12 @@ kvoctrainDoc::kvoctrainDoc(TQObject *parent, const KURL& url)
   connect( this, TQ_SIGNAL(progressChanged(kvoctrainDoc*,int)), parent, TQ_SLOT(slotProgress(kvoctrainDoc*,int)) );
 
   TQString tmpfile;
-  if (TDEIO::NetAccess::download( url, tmpfile, 0 ))
+  if (TDEIO::NetAccess::download( url, tmpfile, nullptr ))
   {
     TQFile f(tmpfile);
     if (!f.open(IO_ReadOnly))
     {
-      KMessageBox::error(0, i18n("<qt>Cannot open file<br><b>%1</b></qt>").arg(url.path()));
+      KMessageBox::error(nullptr, i18n("<qt>Cannot open file<br><b>%1</b></qt>").arg(url.path()));
       return;
     }
 
@@ -167,7 +167,7 @@ kvoctrainDoc::kvoctrainDoc(TQObject *parent, const KURL& url)
         }
         TQString format = i18n("Could not load \"%1\"\nDo you want to try again?");
         TQString msg = format.arg(url.path());
-        int result = KMessageBox::warningContinueCancel(0, msg,
+        int result = KMessageBox::warningContinueCancel(nullptr, msg,
                                                         tdeApp->makeStdCaption(i18n("I/O Failure")),
                                                         i18n("&Retry"));
         if ( result == KMessageBox::Cancel ) {
@@ -222,7 +222,7 @@ bool kvoctrainDoc::saveAs (TQObject *parent, const KURL & url, TQString title, F
 
     if (!f.open(IO_WriteOnly))
     {
-      KMessageBox::error(0, i18n("<qt>Cannot write to file<br><b>%1</b></qt>").arg(tmp.path()));
+      KMessageBox::error(nullptr, i18n("<qt>Cannot write to file<br><b>%1</b></qt>").arg(tmp.path()));
       return false;
     }
 
@@ -263,7 +263,7 @@ bool kvoctrainDoc::saveAs (TQObject *parent, const KURL & url, TQString title, F
     if (!saved) {
       TQString format = i18n("Could not save \"%1\"\nDo you want to try again?");
       TQString msg = format.arg(tmp.path());
-      int result = KMessageBox::warningContinueCancel(0, msg,
+      int result = KMessageBox::warningContinueCancel(nullptr, msg,
                                                       tdeApp->makeStdCaption(i18n("I/O Failure")),
                                                       i18n("&Retry"));
       if ( result == KMessageBox::Cancel ) return false;
@@ -279,7 +279,7 @@ bool kvoctrainDoc::saveAs (TQObject *parent, const KURL & url, TQString title, F
 kvoctrainExpr *kvoctrainDoc::getEntry(int index)
 {
   if (index < 0 || index >= (int)vocabulary.size() )
-    return 0;
+    return nullptr;
   else
     return &vocabulary[index];
 }
diff --git a/kvoctrain/kvoctrain/kvtnewstuff.h b/kvoctrain/kvoctrain/kvtnewstuff.h
index 721af2d1..d1cca414 100644
--- a/kvoctrain/kvoctrain/kvtnewstuff.h
+++ b/kvoctrain/kvoctrain/kvtnewstuff.h
@@ -24,7 +24,7 @@ class KVTNewStuff : public TQObject, public TDENewStuff
 TQ_OBJECT
   
 public:
-  KVTNewStuff(TQWidget *parent = 0, const char *name = 0);
+  KVTNewStuff(TQWidget *parent = nullptr, const char *name = nullptr);
 
   /**
     Installs a downloaded file according to the application's configuration.
diff --git a/kvoctrain/kvoctrain/main.cpp b/kvoctrain/kvoctrain/main.cpp
index f8ce71b4..b16d6fd8 100644
--- a/kvoctrain/kvoctrain/main.cpp
+++ b/kvoctrain/kvoctrain/main.cpp
@@ -33,7 +33,7 @@ int main(int argc, char* argv[]) {
 
 static TDECmdLineOptions options[] =
 {
-  { I18N_NOOP("+[file]"),   I18N_NOOP("Document file to open"), 0 },
+  { I18N_NOOP("+[file]"),   I18N_NOOP("Document file to open"), nullptr },
   TDECmdLineLastOption
 };
 
@@ -96,7 +96,7 @@ static const char version[]     = KVOCTRAIN_VERSION_STRING;
   TDECmdLineArgs::addCmdLineOptions( options );
   TDEApplication app;
 
-  kvoctrainApp *kva = 0;
+  kvoctrainApp *kva = nullptr;
   if (app.isRestored()) {
     int n = 1;
     while (TDEMainWindow::canBeRestored(n)){
diff --git a/kvoctrain/kvoctrain/query-dialogs/AdjQueryDlg.cpp b/kvoctrain/kvoctrain/query-dialogs/AdjQueryDlg.cpp
index 409daa01..b557ec27 100644
--- a/kvoctrain/kvoctrain/query-dialogs/AdjQueryDlg.cpp
+++ b/kvoctrain/kvoctrain/query-dialogs/AdjQueryDlg.cpp
@@ -68,7 +68,7 @@ AdjQueryDlg::AdjQueryDlg
   connect(mw->lev2Field, TQ_SIGNAL(textChanged(const TQString&)), TQ_SLOT(lev2Changed(const TQString&)) );
   connect(mw->lev3Field, TQ_SIGNAL(textChanged(const TQString&)), TQ_SLOT(lev3Changed(const TQString&)) );
 
-  qtimer = 0;
+  qtimer = nullptr;
 
   mw->lev1Label->setBuddy(mw->lev1Field);
   mw->lev2Label->setBuddy(mw->lev2Field);
@@ -135,7 +135,7 @@ void AdjQueryDlg::setQuery(TQString,
 
    int mqtime = Prefs::maxTimePer();
    if (mqtime > 0) {
-     if (qtimer == 0) {
+     if (!qtimer) {
        qtimer = new TQTimer( this );
        connect( qtimer, TQ_SIGNAL(timeout()), this, TQ_SLOT(timeoutReached()) );
      }
@@ -240,7 +240,7 @@ void AdjQueryDlg::dontKnowClicked()
 void AdjQueryDlg::slotUser2()
 {
 
-   if (qtimer != 0)
+   if (qtimer)
      qtimer->stop();
 
    emit sigEditEntry (q_row, KV_COL_ORG+q_ocol);
diff --git a/kvoctrain/kvoctrain/query-dialogs/ArtQueryDlg.cpp b/kvoctrain/kvoctrain/query-dialogs/ArtQueryDlg.cpp
index 5ad656f6..975afaac 100644
--- a/kvoctrain/kvoctrain/query-dialogs/ArtQueryDlg.cpp
+++ b/kvoctrain/kvoctrain/query-dialogs/ArtQueryDlg.cpp
@@ -55,7 +55,7 @@ ArtQueryDlg::ArtQueryDlg
   mw = new ArtQueryDlgForm(this);
   setMainWidget(mw);
 
-  qtimer = 0;
+  qtimer = nullptr;
 
   mw->artGroup->insert (mw->natural);
   mw->artGroup->insert (mw->male);
@@ -156,7 +156,7 @@ void ArtQueryDlg::setQuery(TQString,
    mw->countbar->setProgress(q_start - q_num + 1);
    int mqtime = Prefs::maxTimePer();
    if (mqtime > 0) {
-     if (qtimer == 0) {
+     if (!qtimer) {
        qtimer = new TQTimer( this );
        connect( qtimer, TQ_SIGNAL(timeout()), this, TQ_SLOT(timeoutReached()) );
      }
@@ -277,7 +277,7 @@ void ArtQueryDlg::dontKnowClicked()
 void ArtQueryDlg::slotUser2()
 {
 
-   if (qtimer != 0)
+   if (qtimer)
      qtimer->stop();
 
    emit sigEditEntry (q_row, KV_COL_ORG+q_ocol);
diff --git a/kvoctrain/kvoctrain/query-dialogs/MCQueryDlg.cpp b/kvoctrain/kvoctrain/query-dialogs/MCQueryDlg.cpp
index d370de04..e0d70065 100644
--- a/kvoctrain/kvoctrain/query-dialogs/MCQueryDlg.cpp
+++ b/kvoctrain/kvoctrain/query-dialogs/MCQueryDlg.cpp
@@ -75,7 +75,7 @@ MCQueryDlg::MCQueryDlg(
   connect( mw->rb_trans2, TQ_SIGNAL(clicked()), TQ_SLOT(trans2clicked()) );
   connect( mw->rb_trans1, TQ_SIGNAL(clicked()), TQ_SLOT(trans1clicked()) );
 
-  qtimer = 0;
+  qtimer = nullptr;
 
   setQuery (org, trans, entry, orgcol, transcol, q_cycle, q_num, q_start, exp, doc);
   mw->countbar->setFormat("%v/%m");
@@ -120,7 +120,7 @@ void MCQueryDlg::setQuery(TQString org,
    mw->countbar->setProgress(q_start - q_num + 1);
    int mqtime = Prefs::maxTimePer();
    if (mqtime > 0) {
-     if (qtimer == 0) {
+     if (!qtimer) {
        qtimer = new TQTimer( this );
        connect( qtimer, TQ_SIGNAL(timeout()), this, TQ_SLOT(timeoutReached()) );
      }
@@ -382,7 +382,7 @@ void MCQueryDlg::dontKnowClicked()
 void MCQueryDlg::slotUser2()
 {
 
-   if (qtimer != 0)
+   if (qtimer)
      qtimer->stop();
 
    emit sigEditEntry (q_row, KV_COL_ORG+q_ocol);
diff --git a/kvoctrain/kvoctrain/query-dialogs/QueryDlgBase.cpp b/kvoctrain/kvoctrain/query-dialogs/QueryDlgBase.cpp
index 075965d2..b55ff78c 100644
--- a/kvoctrain/kvoctrain/query-dialogs/QueryDlgBase.cpp
+++ b/kvoctrain/kvoctrain/query-dialogs/QueryDlgBase.cpp
@@ -37,8 +37,8 @@ QueryDlgBase::QueryDlgBase(const TQString & caption, TQWidget *parent, const cha
   : KDialogBase(Swallow, caption, User1|User2, NoDefault, parent, name, modal, false,
     KGuiItem(i18n("&Stop Query")), KGuiItem(i18n("&Edit Expression...")))
 {
-  kv_doc = 0;
-  kv_exp = 0;
+  kv_doc = nullptr;
+  kv_exp = nullptr;
   //type_timeout = kvq_notimeout;
 }
 
@@ -237,7 +237,7 @@ void QueryDlgBase::verifyButton(TQRadioButton *radio, bool is_ok, TQWidget *widg
     radio->setFont(ft);
   }
 
-  if (widget2 != 0) {
+  if (widget2) {
     ft = widget2->font();
     if (ft.weight() != TQFont::Bold) {
       ft.setWeight(TQFont::Bold);
@@ -251,7 +251,7 @@ void QueryDlgBase::verifyButton(TQRadioButton *radio, bool is_ok, TQWidget *widg
       known_pal.setActive(k_normal);
       known_pal.setInactive(k_normal);
       radio->setPalette( known_pal );
-      if (widget2 != 0)
+      if (widget2)
         widget2->setPalette( known_pal );
     }
   }
@@ -261,7 +261,7 @@ void QueryDlgBase::verifyButton(TQRadioButton *radio, bool is_ok, TQWidget *widg
       unknown_pal.setActive(u_normal);
       unknown_pal.setInactive(u_normal);
       radio->setPalette( unknown_pal );
-      if (widget2 != 0)
+      if (widget2)
         widget2->setPalette( unknown_pal );
     }
   }
@@ -283,7 +283,7 @@ void QueryDlgBase::resetButton(TQRadioButton *radio, TQWidget *widget2)
     pal.setActive(normal);
     pal.setInactive(normal);
     radio->setPalette( pal );
-    if (widget2 != 0)
+    if (widget2)
       widget2->setPalette( pal );
   }
 
@@ -293,7 +293,7 @@ void QueryDlgBase::resetButton(TQRadioButton *radio, TQWidget *widget2)
     radio->setFont(ft);
   }
 
-  if (widget2 != 0) {
+  if (widget2) {
     ft = widget2->font();
     if (ft.weight() != TQFont::Normal) {
       ft.setWeight(TQFont::Normal);
diff --git a/kvoctrain/kvoctrain/query-dialogs/QueryDlgBase.h b/kvoctrain/kvoctrain/query-dialogs/QueryDlgBase.h
index b9a32245..60be2485 100644
--- a/kvoctrain/kvoctrain/query-dialogs/QueryDlgBase.h
+++ b/kvoctrain/kvoctrain/query-dialogs/QueryDlgBase.h
@@ -52,7 +52,7 @@ class QueryDlgBase : public KDialogBase
 public:
   enum Result { Unknown, Known, Timeout, StopIt };
 
-  QueryDlgBase(const TQString & caption, TQWidget *parent = 0, const char *name = 0, bool modal = false);
+  QueryDlgBase(const TQString & caption, TQWidget *parent = nullptr, const char *name = nullptr, bool modal = false);
 
   virtual ~QueryDlgBase ();
 
@@ -65,8 +65,8 @@ public:
                     bool mixed);
   void resetField (TQMultiLineEdit *field);
 
-  void verifyButton(TQRadioButton *radio, bool is_ok, TQWidget *widget2 = 0);
-  void resetButton (TQRadioButton *radio, TQWidget *widget2 = 0);
+  void verifyButton(TQRadioButton *radio, bool is_ok, TQWidget *widget2 = nullptr);
+  void resetButton (TQRadioButton *radio, TQWidget *widget2 = nullptr);
 
   // Show string after selceting known/unknown
   // depending on progress and randomness
diff --git a/kvoctrain/kvoctrain/query-dialogs/RandomQueryDlg.cpp b/kvoctrain/kvoctrain/query-dialogs/RandomQueryDlg.cpp
index 4accab3e..01709005 100644
--- a/kvoctrain/kvoctrain/query-dialogs/RandomQueryDlg.cpp
+++ b/kvoctrain/kvoctrain/query-dialogs/RandomQueryDlg.cpp
@@ -189,8 +189,8 @@ RandomQueryDlg::RandomQueryDlg(
     }
   }
 
-  kv_doc = 0;
-  qtimer = 0;
+  kv_doc = nullptr;
+  qtimer = nullptr;
   //setCaption (tdeApp->makeStdCaption(i18n("Random Query")));
   setQuery (org, trans, entry, orgcol, transcol, q_cycle, q_num, q_start, exp, doc);
   mw->countbar->setFormat("%v/%m");
@@ -198,7 +198,7 @@ RandomQueryDlg::RandomQueryDlg(
 
   if ( suggestions )
   {
-    ProgressDlg* pdlg = 0;
+    ProgressDlg* pdlg = nullptr;
     if ( split && kv_doc -> numEntries() >= 500 )
     {
       pdlg = new ProgressDlg (TQString(), TQString(), tdeApp -> makeStdCaption (i18n("Loading Random Query")));
@@ -314,7 +314,7 @@ void RandomQueryDlg::setQuery(TQString org,
    mw->countbar->setProgress(q_start - q_num + 1);
    int mqtime = Prefs::maxTimePer();
    if (mqtime > 0) {
-     if (qtimer == 0) {
+     if (!qtimer) {
        qtimer = new TQTimer( this );
        connect( qtimer, TQ_SIGNAL(timeout()), this, TQ_SLOT(timeoutReached()) );
      }
@@ -577,7 +577,7 @@ void RandomQueryDlg::setHintFields()
 
 void RandomQueryDlg::slotUser2()
 {
-   if (qtimer != 0)
+   if (qtimer)
      qtimer->stop();
 
    emit sigEditEntry (q_row, KV_COL_ORG+q_ocol);
@@ -631,7 +631,7 @@ void RandomQueryDlg::keyPressEvent( TQKeyEvent *e )
 {
   if ( Prefs::suggestions() )
   {
-    TQComboBox* combo = 0;
+    TQComboBox* combo = nullptr;
     if ( e -> key() == Key_F4 || e -> key() == Key_F5 || e -> key() == Key_F6 )
       for ( uint i = 0; i < translations.count(); i ++ )
         if ( transCombos.at(i) -> hasFocus() )
diff --git a/kvoctrain/kvoctrain/query-dialogs/SimpleQueryDlg.cpp b/kvoctrain/kvoctrain/query-dialogs/SimpleQueryDlg.cpp
index 91464fcb..6a2c9a12 100644
--- a/kvoctrain/kvoctrain/query-dialogs/SimpleQueryDlg.cpp
+++ b/kvoctrain/kvoctrain/query-dialogs/SimpleQueryDlg.cpp
@@ -58,8 +58,8 @@ SimpleQueryDlg::SimpleQueryDlg(
   connect(mw->show_more, TQ_SIGNAL(clicked()), TQ_SLOT(showMoreClicked()) );
   connect(mw->answerField, TQ_SIGNAL(textChanged()), TQ_SLOT(slotAnswerChanged()) );
 
-  kv_doc = 0;
-  qtimer = 0;
+  kv_doc = nullptr;
+  qtimer = nullptr;
   resize(configDialogSize("SimpleQueryDialog"));
   setQuery (querytype, entry, column, q_cycle, q_num, q_start, exp, doc);
   mw->countbar->setFormat("%v/%m");
@@ -168,7 +168,7 @@ void SimpleQueryDlg::setQuery(QueryType _querytype,
    int mqtime = Prefs::maxTimePer();
 
    if (mqtime > 0) {
-     if (qtimer == 0) {
+     if (!qtimer) {
        qtimer = new TQTimer( this );
        connect( qtimer, TQ_SIGNAL(timeout()), this, TQ_SLOT(timeoutReached()) );
      }
@@ -256,7 +256,7 @@ void SimpleQueryDlg::dontKnowClicked()
 
 void SimpleQueryDlg::slotUser2()
 {
-   if (qtimer != 0)
+   if (qtimer)
      qtimer->stop();
 
    emit sigEditEntry(q_row, KV_COL_ORG+q_ocol);
diff --git a/kvoctrain/kvoctrain/query-dialogs/VerbQueryDlg.cpp b/kvoctrain/kvoctrain/query-dialogs/VerbQueryDlg.cpp
index 05208fe4..ae7e35f7 100644
--- a/kvoctrain/kvoctrain/query-dialogs/VerbQueryDlg.cpp
+++ b/kvoctrain/kvoctrain/query-dialogs/VerbQueryDlg.cpp
@@ -81,7 +81,7 @@ VerbQueryDlg::VerbQueryDlg
   connect(mw->p1pField, TQ_SIGNAL(textChanged(const TQString&)), TQ_SLOT(slotP1pChanged(const TQString&)) );
   connect(mw->p1sField, TQ_SIGNAL(textChanged(const TQString&)), TQ_SLOT(slotP1sChanged(const TQString&)) );
 
-  qtimer = 0;
+  qtimer = nullptr;
 
   setQuery (type, entry, col, query_cycle, query_num, query_startnum, exp, doc, prefix, conjug);
   mw->countbar->setFormat("%v/%m");
@@ -144,7 +144,7 @@ void VerbQueryDlg::setQuery(TQString,
    mw->countbar->setProgress(q_start - q_num + 1);
 
    if (mqtime > 0) { // more than 1000 milli-seconds
-     if (qtimer == 0) {
+     if (!qtimer) {
        qtimer = new TQTimer( this );
        connect( qtimer, TQ_SIGNAL(timeout()), this, TQ_SLOT(timeoutReached()) );
      }
@@ -405,7 +405,7 @@ void VerbQueryDlg::dontKnowClicked()
 void VerbQueryDlg::slotUser2()
 {
 
-   if (qtimer != 0)
+   if (qtimer)
      qtimer->stop();
 
    emit sigEditEntry (q_row, KV_COL_ORG+q_ocol);
diff --git a/kvoctrain/kvoctrain/statistik-dialogs/StatistikPage.cpp b/kvoctrain/kvoctrain/statistik-dialogs/StatistikPage.cpp
index f6aa5a31..645a113f 100644
--- a/kvoctrain/kvoctrain/statistik-dialogs/StatistikPage.cpp
+++ b/kvoctrain/kvoctrain/statistik-dialogs/StatistikPage.cpp
@@ -244,7 +244,7 @@ void StatistikPage::setupPixmaps()
 
 void StatistikPage::slotRMB( TQListViewItem* Item, const TQPoint & /*point*/, int col)
 {
-  if( Item != 0)
+  if( Item)
     slotPopupMenu(((GradeListItem*)Item)->getLesson(), col);
 }
 
diff --git a/kvoctrain/kvoctrain/tools/extractlang.cpp b/kvoctrain/kvoctrain/tools/extractlang.cpp
index a775274e..31f650c8 100644
--- a/kvoctrain/kvoctrain/tools/extractlang.cpp
+++ b/kvoctrain/kvoctrain/tools/extractlang.cpp
@@ -147,14 +147,14 @@ int main()
 
   out << "KV_ISO639_Code kv_iso639_1[] = {\n"
       << twoLangs.left(twoLangs.length()-1) << endl
-      << "\t{{0}, {0}, {0}}\n"
+      << "\t{{nullptr}, {nullptr}, {nullptr}}\n"
       << "};\n";
 
   out << endl;
 
   out << "KV_ISO639_Code kv_iso639_2[] = {\n"
       << threeLangs.left(threeLangs.length()-1) << endl
-      <<"\t{{0}, {0}, {0}}\n"
+      <<"\t{{nullptr}, {nullptr}, {nullptr}}\n"
       << "};\n";
 
   return 0;
diff --git a/kwordquiz/src/dlglanguage.h b/kwordquiz/src/dlglanguage.h
index 6c338bf7..8b17247d 100644
--- a/kwordquiz/src/dlglanguage.h
+++ b/kwordquiz/src/dlglanguage.h
@@ -30,7 +30,7 @@ class DlgLanguage : public KDialogBase {
     TQ_OBJECT
   
   public:
-    DlgLanguage(TQWidget *parent = 0, const char *name = 0, bool modal=true);
+    DlgLanguage(TQWidget *parent = nullptr, const char *name = nullptr, bool modal=true);
     ~DlgLanguage();
 
     void setLanguage(int index, const TQString &lang);
diff --git a/kwordquiz/src/dlgrc.h b/kwordquiz/src/dlgrc.h
index 8bee9ac8..a6edb424 100644
--- a/kwordquiz/src/dlgrc.h
+++ b/kwordquiz/src/dlgrc.h
@@ -29,7 +29,7 @@ class DlgRC : public KDialogBase
 TQ_OBJECT
   
 public:
-  DlgRC(TQWidget *parent = 0, const char *name = 0, bool modal=true);
+  DlgRC(TQWidget *parent = nullptr, const char *name = nullptr, bool modal=true);
 
   ~DlgRC();
   void setNumRows(int r);
diff --git a/kwordquiz/src/dlgsort.h b/kwordquiz/src/dlgsort.h
index a6de2768..93931921 100644
--- a/kwordquiz/src/dlgsort.h
+++ b/kwordquiz/src/dlgsort.h
@@ -30,7 +30,7 @@ TQ_OBJECT
   
 public:
 
-  DlgSort(TQWidget *parent = 0, const char *name = 0, bool modal=true);
+  DlgSort(TQWidget *parent = nullptr, const char *name = nullptr, bool modal=true);
   ~DlgSort();
   
   bool base();
diff --git a/kwordquiz/src/flashview.h b/kwordquiz/src/flashview.h
index 02abcf41..07cf6330 100644
--- a/kwordquiz/src/flashview.h
+++ b/kwordquiz/src/flashview.h
@@ -33,7 +33,7 @@ class FlashView : public FlashViewBase
 TQ_OBJECT
   
 public:
-    FlashView(TQWidget *parent = 0, const char *name = 0, WFlags f = 0);
+    FlashView(TQWidget *parent = nullptr, const char *name = nullptr, WFlags f = 0);
 
     ~FlashView();
 
diff --git a/kwordquiz/src/kwordquiz.cpp b/kwordquiz/src/kwordquiz.cpp
index e0d3124f..750642d4 100644
--- a/kwordquiz/src/kwordquiz.cpp
+++ b/kwordquiz/src/kwordquiz.cpp
@@ -54,7 +54,7 @@
 
 #define ID_MENU_QUIZ 1001
 
-KWordQuizApp::KWordQuizApp(TQWidget* , const char* name):TDEMainWindow(0, name)
+KWordQuizApp::KWordQuizApp(TQWidget* , const char* name):TDEMainWindow(nullptr, name)
 {
 
   ///////////////////////////////////////////////////////////////////
@@ -69,17 +69,17 @@ KWordQuizApp::KWordQuizApp(TQWidget* , const char* name):TDEMainWindow(0, name)
 
   m_dirWatch = KDirWatch::self();
   m_quizType = WQQuiz::qtEditor;
-  m_quiz = 0;
-  m_flashView = 0;
-  m_multipleView = 0;
-  m_qaView = 0;
-  m_newStuff = 0;
+  m_quiz = nullptr;
+  m_flashView = nullptr;
+  m_multipleView = nullptr;
+  m_qaView = nullptr;
+  m_newStuff = nullptr;
 
   slotQuizEditor();
   slotUndoChange(i18n("Cannot &Undo"), false);
   updateMode(Prefs::mode());
 
-  m_prefDialog = 0;
+  m_prefDialog = nullptr;
 
   editMarkBlank->setEnabled(Prefs::enableBlanks());
   editUnmarkBlank->setEnabled(Prefs::enableBlanks());
@@ -243,27 +243,27 @@ void KWordQuizApp::initActions()
   quizQA->setWhatsThis(i18n("Starts a question and answer session using the active vocabulary"));
   quizQA->setToolTip(quizQA->whatsThis());
 
-  quizCheck = new TDEAction(i18n("&Check"), "check", "Return", this, 0, actionCollection(),"quiz_check");
+  quizCheck = new TDEAction(i18n("&Check"), "check", "Return", this, nullptr, actionCollection(),"quiz_check");
   quizCheck->setWhatsThis(i18n("Checks your answer to this question"));
   quizCheck->setToolTip(quizCheck->whatsThis());
 
-  flashKnow = new TDEAction(i18n("I &Know"), "know", "K", this, 0, actionCollection(),"flash_know");
+  flashKnow = new TDEAction(i18n("I &Know"), "know", "K", this, nullptr, actionCollection(),"flash_know");
   flashKnow->setWhatsThis(i18n("Counts this card as correct and shows the next card"));
   flashKnow->setToolTip(flashKnow->whatsThis());
 
-  flashDontKnow = new TDEAction(i18n("I &Do Not Know"), "dontknow", "D", this, 0, actionCollection(),"flash_dont_know");
+  flashDontKnow = new TDEAction(i18n("I &Do Not Know"), "dontknow", "D", this, nullptr, actionCollection(),"flash_dont_know");
   flashDontKnow->setWhatsThis(i18n("Counts this card as incorrect and shows the next card"));
   flashDontKnow->setToolTip(flashDontKnow->whatsThis());
 
-  qaHint = new TDEAction(i18n("&Hint"), "hint", "CTRL+H", this, 0, actionCollection(),"qa_hint");
+  qaHint = new TDEAction(i18n("&Hint"), "hint", "CTRL+H", this, nullptr, actionCollection(),"qa_hint");
   qaHint->setWhatsThis(i18n("Gets the next correct letter of the answer"));
   qaHint->setToolTip(qaHint->whatsThis());
 
-  quizRestart = new TDEAction(i18n("&Restart"), "restart.png", "CTRL+R", this, 0, actionCollection(), "quiz_restart");
+  quizRestart = new TDEAction(i18n("&Restart"), "restart.png", "CTRL+R", this, nullptr, actionCollection(), "quiz_restart");
   quizRestart->setWhatsThis(i18n("Restarts the quiz session from the beginning"));
   quizRestart->setToolTip(quizRestart->whatsThis());
 
-  quizRepeatErrors = new TDEAction(i18n("Repeat &Errors"), "repeat", "CTRL+E", this, 0, actionCollection(),"quiz_repeat_errors");
+  quizRepeatErrors = new TDEAction(i18n("Repeat &Errors"), "repeat", "CTRL+E", this, nullptr, actionCollection(),"quiz_repeat_errors");
   quizRepeatErrors->setWhatsThis(i18n("Repeats all incorrectly answered questions"));
   quizRepeatErrors->setToolTip(quizRepeatErrors->whatsThis());
 
@@ -279,14 +279,14 @@ void KWordQuizApp::initActions()
   connect(charMapper, TQ_SIGNAL(mapped(int)), this, TQ_SLOT(slotInsertChar(int)));
 
   specialChar1 = new TDEAction(i18n("Special Character 1"), "", "CTRL+1", charMapper, TQ_SLOT(map()), actionCollection(), "char_1") ;
-  specialChar2 = new TDEAction(i18n("Special Character 2"), 0, "CTRL+2", charMapper, TQ_SLOT(map()), actionCollection(), "char_2") ;
-  specialChar3 = new TDEAction(i18n("Special Character 3"), 0, "CTRL+3", charMapper, TQ_SLOT(map()), actionCollection(), "char_3") ;
-  specialChar4 = new TDEAction(i18n("Special Character 4"), 0, "CTRL+4", charMapper, TQ_SLOT(map()), actionCollection(), "char_4") ;
-  specialChar5 = new TDEAction(i18n("Special Character 5"), 0, "CTRL+5", charMapper, TQ_SLOT(map()), actionCollection(), "char_5") ;
-  specialChar6 = new TDEAction(i18n("Special Character 6"), 0, "CTRL+6", charMapper, TQ_SLOT(map()), actionCollection(), "char_6") ;
-  specialChar7 = new TDEAction(i18n("Special Character 7"), 0, "CTRL+7", charMapper, TQ_SLOT(map()), actionCollection(), "char_7") ;
-  specialChar8 = new TDEAction(i18n("Special Character 8"), 0, "CTRL+8", charMapper, TQ_SLOT(map()), actionCollection(), "char_8") ;
-  specialChar9 = new TDEAction(i18n("Special Character 9"), 0, "CTRL+9", charMapper, TQ_SLOT(map()), actionCollection(), "char_9") ;
+  specialChar2 = new TDEAction(i18n("Special Character 2"), nullptr, "CTRL+2", charMapper, TQ_SLOT(map()), actionCollection(), "char_2") ;
+  specialChar3 = new TDEAction(i18n("Special Character 3"), nullptr, "CTRL+3", charMapper, TQ_SLOT(map()), actionCollection(), "char_3") ;
+  specialChar4 = new TDEAction(i18n("Special Character 4"), nullptr, "CTRL+4", charMapper, TQ_SLOT(map()), actionCollection(), "char_4") ;
+  specialChar5 = new TDEAction(i18n("Special Character 5"), nullptr, "CTRL+5", charMapper, TQ_SLOT(map()), actionCollection(), "char_5") ;
+  specialChar6 = new TDEAction(i18n("Special Character 6"), nullptr, "CTRL+6", charMapper, TQ_SLOT(map()), actionCollection(), "char_6") ;
+  specialChar7 = new TDEAction(i18n("Special Character 7"), nullptr, "CTRL+7", charMapper, TQ_SLOT(map()), actionCollection(), "char_7") ;
+  specialChar8 = new TDEAction(i18n("Special Character 8"), nullptr, "CTRL+8", charMapper, TQ_SLOT(map()), actionCollection(), "char_8") ;
+  specialChar9 = new TDEAction(i18n("Special Character 9"), nullptr, "CTRL+9", charMapper, TQ_SLOT(map()), actionCollection(), "char_9") ;
 
   charMapper->setMapping(specialChar1, 1);
   charMapper->setMapping(specialChar2, 2);
@@ -345,7 +345,7 @@ void KWordQuizApp::openURL(const KURL& url)
       TDEMainWindow* w;
       if(memberList)
       {
-        for(w=memberList->first(); w!=0; w=memberList->next())
+        for(w=memberList->first(); w; w=memberList->next())
         {
           KWordQuizApp *a =(KWordQuizApp *) w;
           if(a->doc ->URL().path() == url.path())
@@ -493,11 +493,11 @@ void KWordQuizApp::slotFileOpen()
 {
   slotStatusMsg(i18n("Opening file..."));
 
-  TQCheckBox * cb = new TQCheckBox(i18n("&Join selected files into one list"), 0, 0);
+  TQCheckBox * cb = new TQCheckBox(i18n("&Join selected files into one list"), nullptr, nullptr);
   cb -> setChecked(false);
 
   TQString filter = i18n("*.kvtml *.wql *.xml.gz *.csv|All Supported Documents\n*.kvtml|TDE Vocabulary Document\n*.wql|KWordQuiz Document\n*.xml.gz|Pauker Lesson\n*.csv|Comma-Separated Values");
-  KFileDialog *fd = new KFileDialog(TQString(), filter, this, 0, true, cb);
+  KFileDialog *fd = new KFileDialog(TQString(), filter, this, nullptr, true, cb);
   fd -> setOperationMode(KFileDialog::Opening);
   fd -> setMode(KFile::Files | KFile::ExistingOnly);
   fd -> setCaption(i18n("Open Vocabulary Document"));
@@ -585,7 +585,7 @@ bool KWordQuizApp::saveAsFileName( )
   bool success = false;
 
   TQString filter = i18n("*.kvtml|TDE Vocabulary Document\n*.wql|KWordQuiz Document\n*.csv|Comma-Separated Values\n*.html|Hypertext Markup Language");
-  KFileDialog *fd = new KFileDialog(TQString(), filter, this, 0, true);
+  KFileDialog *fd = new KFileDialog(TQString(), filter, this, nullptr, true);
   fd -> setOperationMode(KFileDialog::Saving);
   fd -> setCaption(i18n("Save Vocabulary Document As"));
 
@@ -608,7 +608,7 @@ bool KWordQuizApp::saveAsFileName( )
       }
 
       TQFileInfo fileinfo(url.path());
-      if (fileinfo.exists() && KMessageBox::warningContinueCancel(0,
+      if (fileinfo.exists() && KMessageBox::warningContinueCancel(nullptr,
           i18n("<qt>The file<br><b>%1</b><br>already exists. Do you want to overwrite it?</qt>")
               .arg(url.path()),TQString(),i18n("Overwrite")) == KMessageBox::Cancel)
       {
@@ -639,10 +639,10 @@ void KWordQuizApp::slotFileClose()
   else
     if (queryClose())
     {
-      if (m_quiz != 0)
+      if (m_quiz)
       {
         delete(m_quiz);
-        m_quiz = 0;
+        m_quiz = nullptr;
       }
       doc->newDocument();
       setCaption(doc->URL().fileName(), doc->isModified());
@@ -681,7 +681,7 @@ void KWordQuizApp::slotFileQuit()
   TDEMainWindow* w;
   if(memberList)
   {
-    for(w=memberList->first(); w!=0; w=memberList->next())
+    for(w=memberList->first(); w; w=memberList->next())
     {
       // only close the window if the closeEvent is accepted. If the user presses Cancel on the saveModified() dialog,
       // the window and the application stay open.
@@ -763,7 +763,7 @@ void KWordQuizApp::slotEditUnmarkBlank()
 void KWordQuizApp::slotEditFind()
 {
   slotStatusMsg(i18n("Searching for indicated text..."));
-  KMessageBox::sorry(0, i18n("Not implemented yet"));
+  KMessageBox::sorry(nullptr, i18n("Not implemented yet"));
   slotStatusMsg(i18n("Ready"));
 }
 
@@ -802,7 +802,7 @@ void KWordQuizApp::slotVocabFont()
 void KWordQuizApp::slotVocabKeyboard()
 {
   slotStatusMsg(i18n("Changing the keyboard layout..."));
-  KMessageBox::sorry(0, i18n("Not implemented yet"));
+  KMessageBox::sorry(nullptr, i18n("Not implemented yet"));
   slotStatusMsg(i18n("Ready"));
 }
 
@@ -912,10 +912,10 @@ void KWordQuizApp::slotQuizQA()
 
 void KWordQuizApp::updateSession(WQQuiz::QuizType qt)
 {
-  if (m_quiz != 0)
+  if (m_quiz)
   {
     delete(m_quiz);
-    m_quiz = 0;
+    m_quiz = nullptr;
   }
 
   switch( m_quizType ){
@@ -923,24 +923,24 @@ void KWordQuizApp::updateSession(WQQuiz::QuizType qt)
       //
       break;
     case WQQuiz::qtFlash:
-      if (m_flashView != 0)
+      if (m_flashView)
       {
         delete(m_flashView);
-        m_flashView = 0;
+        m_flashView = nullptr;
       }
       break;
     case WQQuiz::qtMultiple:
-      if (m_multipleView != 0)
+      if (m_multipleView)
       {
         delete(m_multipleView);
-        m_multipleView = 0;
+        m_multipleView = nullptr;
       }
       break;
     case WQQuiz::qtQA:
-      if (m_qaView != 0)
+      if (m_qaView)
       {
         delete(m_qaView);
-        m_qaView = 0;
+        m_qaView = nullptr;
       }
       break;
   }
@@ -979,7 +979,7 @@ void KWordQuizApp::updateSession(WQQuiz::QuizType qt)
       else
       {
         delete(m_quiz);
-        m_quiz = 0;
+        m_quiz = nullptr;
       }
       break;
     case WQQuiz::qtMultiple:
@@ -1006,7 +1006,7 @@ void KWordQuizApp::updateSession(WQQuiz::QuizType qt)
       else
       {
         delete(m_quiz);
-        m_quiz = 0;
+        m_quiz = nullptr;
       }
       break;
     case WQQuiz::qtQA:
@@ -1034,7 +1034,7 @@ void KWordQuizApp::updateSession(WQQuiz::QuizType qt)
       else
       {
         delete(m_quiz);
-        m_quiz = 0;
+        m_quiz = nullptr;
       }
       break;
 
@@ -1130,7 +1130,7 @@ void KWordQuizApp::slotStatusMsg(const TQString &text)
  */
 void KWordQuizApp::updateMode(int m)
 {
-  if (m_quiz != 0)
+  if (m_quiz)
     if (KMessageBox::warningContinueCancel(this, i18n("This will restart your quiz. Do you wish to continue?"), TQString(), KStdGuiItem::cont(), "askModeQuiz") != KMessageBox::Continue)
     {
       mode1->setChecked(Prefs::mode() == 1);
@@ -1191,13 +1191,13 @@ void KWordQuizApp::updateMode(int m)
     break;
   }
 
-  if (m_quiz !=0)
+  if (m_quiz)
     updateSession(m_quizType);
 }
 
 void KWordQuizApp::slotInsertChar( int i )
 {
-  if (m_qaView != 0)
+  if (m_qaView)
     m_qaView->slotSpecChar(Prefs::specialCharacters()[i - 1]);
   else
     if (centralWidget() == m_editView)
diff --git a/kwordquiz/src/kwordquiz.h b/kwordquiz/src/kwordquiz.h
index 347a0529..a78a6ba5 100644
--- a/kwordquiz/src/kwordquiz.h
+++ b/kwordquiz/src/kwordquiz.h
@@ -67,11 +67,11 @@ class KWordQuizApp : public TDEMainWindow
   public:
     /** construtor of KWordQuizApp, calls all init functions to create the application.
      */
-    KWordQuizApp(TQWidget* parent=0, const char* name=0);
+    KWordQuizApp(TQWidget* parent=nullptr, const char* name=nullptr);
     ~KWordQuizApp();
     /** opens a file specified by commandline option
      */
-    void openDocumentFile(const KURL& url=0);
+    void openDocumentFile(const KURL& url=nullptr);
     /** returns a pointer to the current document connected to the KTMainWindow instance and is used by
      * the View class to access the document object's methods
      */
diff --git a/kwordquiz/src/kwordquizdoc.cpp b/kwordquiz/src/kwordquizdoc.cpp
index 70fb3663..d473f239 100644
--- a/kwordquiz/src/kwordquizdoc.cpp
+++ b/kwordquiz/src/kwordquizdoc.cpp
@@ -157,12 +157,12 @@ bool KWordQuizDoc::newDocument()
 bool KWordQuizDoc::openDocument(const KURL& url, bool append, int index)
 {
   TQString tmpfile;
-  if (TDEIO::NetAccess::download( url, tmpfile, 0 ))
+  if (TDEIO::NetAccess::download( url, tmpfile, nullptr ))
   {
     TQFile file(tmpfile);
     if (!file.open(IO_ReadOnly))
     {
-      KMessageBox::error(0, i18n("<qt>Cannot open file<br><b>%1</b></qt>").arg(url.path()));
+      KMessageBox::error(nullptr, i18n("<qt>Cannot open file<br><b>%1</b></qt>").arg(url.path()));
       return false;
     }
 
@@ -309,10 +309,10 @@ bool KWordQuizDoc::openDocument(const KURL& url, bool append, int index)
     for (int r = 0; r <= g->numRows() -1; ++r)
     {
       itm = g->item(r, 0);
-      if (itm != 0)
+      if (itm)
         itm->setWordWrap(true);
       itm = g->item(r, 1);
-      if (itm != 0)
+      if (itm)
         itm->setWordWrap(true);
     }
 
@@ -332,7 +332,7 @@ bool KWordQuizDoc::saveDocument(const KURL& url, const char *format /*=0*/)
   TQFile file(url.path());
   if (!file.open(IO_WriteOnly))
   {
-    KMessageBox::error(0, i18n("<qt>Cannot write to file<br><b>%1</b></qt>")
+    KMessageBox::error(nullptr, i18n("<qt>Cannot write to file<br><b>%1</b></qt>")
                        .arg(url.path()));
     //if (filename == fname)
     // filename = "";
diff --git a/kwordquiz/src/kwordquizdoc.h b/kwordquiz/src/kwordquizdoc.h
index 8ab3b387..08f0bf3c 100644
--- a/kwordquiz/src/kwordquizdoc.h
+++ b/kwordquiz/src/kwordquizdoc.h
@@ -46,7 +46,7 @@ class KWordQuizDoc : public TQObject
   
   public:
     /** Constructor for the fileclass of the application */
-    KWordQuizDoc(TQWidget *parent, const char *name=0);
+    KWordQuizDoc(TQWidget *parent, const char *name=nullptr);
     /** Destructor for the fileclass of the application */
     ~KWordQuizDoc();
 
@@ -69,7 +69,7 @@ class KWordQuizDoc : public TQObject
     /** loads the document by filename */
     bool openDocument(const KURL& url, bool append = false, int index = 0);
     /** saves the document under filename and format.*/	
-    bool saveDocument(const KURL& url, const char *format=0);
+    bool saveDocument(const KURL& url, const char *format=nullptr);
     /** returns the KURL of the document */
     const KURL& URL() const;
     /** sets the URL of the document */
diff --git a/kwordquiz/src/kwordquizprefs.cpp b/kwordquiz/src/kwordquizprefs.cpp
index 7ab9a442..d757c86e 100644
--- a/kwordquiz/src/kwordquizprefs.cpp
+++ b/kwordquiz/src/kwordquizprefs.cpp
@@ -46,19 +46,19 @@ KWordQuizPrefs::KWordQuizPrefs(TQWidget *parent, const char *name,  TDEConfigSke
 {
   m_config = config;
 
-  m_prefEditor = new PrefEditor(0, "Editor Settings");
+  m_prefEditor = new PrefEditor(nullptr, "Editor Settings");
   addPage(m_prefEditor, i18n("Editor"), "editor", i18n("Editor Settings"), true);
 
-  m_prefQuiz = new PrefQuiz(0, "Quiz Settings");
+  m_prefQuiz = new PrefQuiz(nullptr, "Quiz Settings");
   addPage(m_prefQuiz, i18n("Quiz"),  "qa", i18n("Quiz Settings"), true);
 
-  m_prefCardAppearance = new PrefCardAppearance(0, "Flashcard Appearance");
+  m_prefCardAppearance = new PrefCardAppearance(nullptr, "Flashcard Appearance");
   addPage(m_prefCardAppearance, i18n("Flashcard\nAppearance"), "flash", i18n("Flashcard Appearance Settings"), true);
 
-  m_prefCharacter = new PrefCharacter(0, "Special Characters");
+  m_prefCharacter = new PrefCharacter(nullptr, "Special Characters");
   addPage(m_prefCharacter, i18n("Special\nCharacters"), "kcharselect", i18n("Special Characters"), true);
 
-  m_dlgSpecChar = 0L;
+  m_dlgSpecChar = nullptr;
 
   connect(m_prefCharacter->lstCharacters, TQ_SIGNAL(selectionChanged()), this, TQ_SLOT(slotCharListSelectionChanged()));
   connect(m_prefCharacter->btnCharacter, TQ_SIGNAL(clicked()), this, TQ_SLOT(slotSelectSpecChar()));
@@ -93,7 +93,7 @@ void KWordQuizPrefs::slotSelectSpecChar( )
   TQString s = m_prefCharacter->lstCharacters->currentItem()->text(2);
   TQChar c = s[0];
 
-  if (m_dlgSpecChar == 0)
+  if (!m_dlgSpecChar)
   {
     m_dlgSpecChar = new DlgSpecChar( this, "insert special char", f, c, true );
     connect(m_dlgSpecChar, TQ_SIGNAL(insertChar(TQChar)), this, TQ_SLOT(slotSpecChar(TQChar)));
@@ -109,7 +109,7 @@ void KWordQuizPrefs::slotDlgSpecCharClosed()
     disconnect(m_dlgSpecChar, TQ_SIGNAL(insertChar(TQChar)), this, TQ_SLOT(slotSpecChar(TQChar)));
     disconnect(m_dlgSpecChar, TQ_SIGNAL(finished()), this, TQ_SLOT(slotDlgSpecCharClosed()));
     m_dlgSpecChar->deleteLater();
-    m_dlgSpecChar = 0L;
+    m_dlgSpecChar = nullptr;
   }
 }
 
diff --git a/kwordquiz/src/kwordquizprefs.h b/kwordquiz/src/kwordquizprefs.h
index 6db9adac..3dfa5d16 100644
--- a/kwordquiz/src/kwordquizprefs.h
+++ b/kwordquiz/src/kwordquizprefs.h
@@ -35,7 +35,7 @@ class KWordQuizPrefs : public TDEConfigDialog
   TQ_OBJECT
   
 public:
-  KWordQuizPrefs(TQWidget *parent=0, const char *name=0, TDEConfigSkeleton *config=0, DialogType dialogType=IconList,
+  KWordQuizPrefs(TQWidget *parent=nullptr, const char *name=nullptr, TDEConfigSkeleton *config=nullptr, DialogType dialogType=IconList,
     int dialogButtons=Default|Ok|Apply|Cancel|Help, ButtonCode defaultButton=Ok, bool modal=false);
 
 protected slots:
diff --git a/kwordquiz/src/kwordquizview.cpp b/kwordquiz/src/kwordquizview.cpp
index 3fac1d06..3c9e533f 100644
--- a/kwordquiz/src/kwordquizview.cpp
+++ b/kwordquiz/src/kwordquizview.cpp
@@ -37,7 +37,7 @@
 #include "dlgrc.h"
 #include "dlgspecchar.h"
 
-TQValueList<WQUndo> *KWordQuizView::m_undoList = 0L;
+TQValueList<WQUndo> *KWordQuizView::m_undoList = nullptr;
 
 KWTQTableItem::KWTQTableItem(TQTable* table, EditType et, const TQString & text) : TQTableItem(table, et, text)
 {}
@@ -68,7 +68,7 @@ KWordQuizView::KWordQuizView(TQWidget *parent, const char *name) : TQTable(paren
   horizontalHeader()->setLabel(0, i18n("Column 1"));
   horizontalHeader()->setLabel(1, i18n("Column 2"));
   setMinimumSize(0, 0); //This seems to improve resizing of main window
-  dlgSpecChar = 0;
+  dlgSpecChar = nullptr;
 }
 
 KWordQuizView::~KWordQuizView()
@@ -298,7 +298,7 @@ void KWordQuizView::endEdit( int row, int col, bool accept, bool replace )
   // this code gets called after enter and arrow keys, now we
   // only process if editing really has been done
 
-  if (cellWidget(row, col) != 0) //if edited the cellWidget still exists
+  if (cellWidget(row, col)) //if edited the cellWidget still exists
   {
     if (((TQLineEdit *) cellWidget(row, col))->text() != m_currentText)
       addUndo(i18n("&Undo Entry"));
@@ -839,7 +839,7 @@ void KWordQuizView::doVocabSpecChar( )
 {
   TQString f = font().family();
   TQChar c=' ';
-  if (dlgSpecChar==0)
+  if (!dlgSpecChar)
   {
     dlgSpecChar = new DlgSpecChar( this, "insert special char", f, c, false );
     connect( dlgSpecChar, TQ_SIGNAL(insertChar(TQChar)), this, TQ_SLOT(slotSpecChar(TQChar)));
@@ -855,7 +855,7 @@ void KWordQuizView::slotDlgSpecCharClosed( )
     disconnect( dlgSpecChar, TQ_SIGNAL(insertChar(TQChar)), this, TQ_SLOT(slotSpecChar(TQChar)));
     disconnect( dlgSpecChar, TQ_SIGNAL( finished() ), this, TQ_SLOT( slotDlgSpecCharClosed() ) );
     dlgSpecChar->deleteLater();
-    dlgSpecChar = 0L;
+    dlgSpecChar = nullptr;
   }
 }
 
diff --git a/kwordquiz/src/kwordquizview.h b/kwordquiz/src/kwordquizview.h
index c2056759..fadfeafd 100644
--- a/kwordquiz/src/kwordquizview.h
+++ b/kwordquiz/src/kwordquizview.h
@@ -54,7 +54,7 @@ class KWordQuizView : public TQTable
   
   public:
     /** Constructor for the main view */
-    KWordQuizView(TQWidget *parent = 0, const char *name=0);
+    KWordQuizView(TQWidget *parent = nullptr, const char *name=nullptr);
     /** Destructor for the main view */
     ~KWordQuizView();
 
diff --git a/kwordquiz/src/kwqnewstuff.h b/kwordquiz/src/kwqnewstuff.h
index 28178cf6..54fc83d1 100644
--- a/kwordquiz/src/kwqnewstuff.h
+++ b/kwordquiz/src/kwqnewstuff.h
@@ -30,7 +30,7 @@ class KWQNewStuff : public TQObject, public TDENewStuff
 TQ_OBJECT
   
 public:
-  KWQNewStuff(TQWidget *parent = 0, const char *name = 0);
+  KWQNewStuff(TQWidget *parent = nullptr, const char *name = nullptr);
 
   /**
     Installs a downloaded file according to the application's configuration.
diff --git a/kwordquiz/src/main.cpp b/kwordquiz/src/main.cpp
index a2a55c06..37028783 100644
--- a/kwordquiz/src/main.cpp
+++ b/kwordquiz/src/main.cpp
@@ -25,12 +25,12 @@ static const char *description = I18N_NOOP("A powerful flashcard and vocabulary
 
 static TDECmdLineOptions options[] =
 {
-  { "m", 0, 0 },
-  { "mode <number>", I18N_NOOP("A number 1-5 corresponding to the \nentries in the Mode menu"), 0 },
-  { "g", 0, 0 },
-  { "goto <session>", I18N_NOOP("Type of session to start with: \n'flash' for flashcard, \n'mc' for multiple choice, \n'qa' for question and answer"), 0 },
-  { "+[File]", I18N_NOOP("File to open"), 0 },
-  { 0, 0, 0 }
+  { "m", nullptr, nullptr },
+  { "mode <number>", I18N_NOOP("A number 1-5 corresponding to the \nentries in the Mode menu"), nullptr },
+  { "g", nullptr, nullptr },
+  { "goto <session>", I18N_NOOP("Type of session to start with: \n'flash' for flashcard, \n'mc' for multiple choice, \n'qa' for question and answer"), nullptr },
+  { "+[File]", I18N_NOOP("File to open"), nullptr },
+  { nullptr, nullptr, nullptr }
 };
 
 int main(int argc, char *argv[])
@@ -41,12 +41,12 @@ int main(int argc, char *argv[])
                        description,
                        TDEAboutData::License_GPL,
                        "(c) 2003-2005, Peter Hedlund",
-                       0,
+                       nullptr,
                        "http://edu.kde.org/kwordquiz",
                        "submit@bugs.trinitydesktop.org");
 
-  aboutData.addAuthor("Peter Hedlund", 0, "peter.hedlund@kdemail.net");
-  aboutData.addCredit("Anne-Marie Mahfouf", I18N_NOOP("KDE Edutainment Maintainer"), "annma@kde.org", 0);
+  aboutData.addAuthor("Peter Hedlund", nullptr, "peter.hedlund@kdemail.net");
+  aboutData.addCredit("Anne-Marie Mahfouf", I18N_NOOP("KDE Edutainment Maintainer"), "annma@kde.org", nullptr);
 
   TDECmdLineArgs::init( argc, argv, &aboutData );
   TDECmdLineArgs::addCmdLineOptions( options ); // Add our own options.
diff --git a/kwordquiz/src/multipleview.h b/kwordquiz/src/multipleview.h
index b8bc454e..bb62110e 100644
--- a/kwordquiz/src/multipleview.h
+++ b/kwordquiz/src/multipleview.h
@@ -31,7 +31,7 @@ class MultipleView : public MultipleViewBase
 TQ_OBJECT
   
 public:
-    MultipleView(TQWidget *parent = 0, const char *name = 0, WFlags f = 0);
+    MultipleView(TQWidget *parent = nullptr, const char *name = nullptr, WFlags f = 0);
 
     ~MultipleView();
 
diff --git a/kwordquiz/src/prefcardappearance.h b/kwordquiz/src/prefcardappearance.h
index a7263dfe..c55a0b56 100644
--- a/kwordquiz/src/prefcardappearance.h
+++ b/kwordquiz/src/prefcardappearance.h
@@ -22,7 +22,7 @@ class PrefCardAppearance : public PrefCardAppearanceBase
 TQ_OBJECT
   
 public:
-  PrefCardAppearance(TQWidget *parent = 0, const char *name = 0);
+  PrefCardAppearance(TQWidget *parent = nullptr, const char *name = nullptr);
   ~PrefCardAppearance();
 
 public slots:
diff --git a/kwordquiz/src/prefcharacter.h b/kwordquiz/src/prefcharacter.h
index 162ee6a5..745de4e4 100644
--- a/kwordquiz/src/prefcharacter.h
+++ b/kwordquiz/src/prefcharacter.h
@@ -29,7 +29,7 @@ class PrefCharacter : public PrefCharacterBase
 TQ_OBJECT
   
 public:
-    PrefCharacter(TQWidget *parent = 0, const char *name = 0);
+    PrefCharacter(TQWidget *parent = nullptr, const char *name = nullptr);
 
     ~PrefCharacter();
 };
diff --git a/kwordquiz/src/prefeditor.h b/kwordquiz/src/prefeditor.h
index 00e3a4ce..7814c187 100644
--- a/kwordquiz/src/prefeditor.h
+++ b/kwordquiz/src/prefeditor.h
@@ -30,7 +30,7 @@ TQ_OBJECT
   
 public:
 
-  PrefEditor(TQWidget *parent, const char *name=0, WFlags f=0);
+  PrefEditor(TQWidget *parent, const char *name=nullptr, WFlags f=0);
   ~PrefEditor();
 
 };
diff --git a/kwordquiz/src/prefquiz.h b/kwordquiz/src/prefquiz.h
index aa013380..4af8ce6a 100644
--- a/kwordquiz/src/prefquiz.h
+++ b/kwordquiz/src/prefquiz.h
@@ -30,7 +30,7 @@ TQ_OBJECT
   
 public:
 
-  PrefQuiz(TQWidget *parent, const char *name=0, WFlags f=0);
+  PrefQuiz(TQWidget *parent, const char *name=nullptr, WFlags f=0);
   ~PrefQuiz();
 };
 
diff --git a/kwordquiz/src/qaview.h b/kwordquiz/src/qaview.h
index 9cf195a3..e0fe34ed 100644
--- a/kwordquiz/src/qaview.h
+++ b/kwordquiz/src/qaview.h
@@ -34,7 +34,7 @@ class QAView : public QAViewBase
 TQ_OBJECT
   
 public:
-    QAView(TQWidget *parent = 0, const char *name = 0, WFlags f = 0);
+    QAView(TQWidget *parent = nullptr, const char *name = nullptr, WFlags f = 0);
 
     ~QAView();
 
diff --git a/kwordquiz/src/wqlreader.cpp b/kwordquiz/src/wqlreader.cpp
index b917913f..b4e03858 100644
--- a/kwordquiz/src/wqlreader.cpp
+++ b/kwordquiz/src/wqlreader.cpp
@@ -59,16 +59,16 @@ KWqlDataItemList WqlReader::parse(const TQString &fileName)
     s=ts.readLine();
     if (s != "WordQuiz")
     {
-      KMessageBox::error(0, i18n("This does not appear to be a (K)WordQuiz file") + s);
+      KMessageBox::error(nullptr, i18n("This does not appear to be a (K)WordQuiz file") + s);
       file.close();
       return list;
     }
     s = ts.readLine();
     s = s.left(1);
-    int iFV = s.toInt(0);
+    int iFV = s.toInt(nullptr);
     if (iFV != 5)
     {
-      KMessageBox::error(0, i18n("KWordQuiz can only open files created by WordQuiz 5.x"));
+      KMessageBox::error(nullptr, i18n("KWordQuiz can only open files created by WordQuiz 5.x"));
       file.close();
       return list;
     }
@@ -83,7 +83,7 @@ KWqlDataItemList WqlReader::parse(const TQString &fileName)
     s = ts.readLine();
     p = s.find("=", 0);
     s = s.right(s.length() - (p + 1));
-    int ps = s.toInt(0);
+    int ps = s.toInt(nullptr);
 
     s = ts.readLine();
     p = s.find("=", 0);
@@ -112,38 +112,38 @@ KWqlDataItemList WqlReader::parse(const TQString &fileName)
     s = ts.readLine();
     p = s.find("=", 0);
     s = s.right(s.length() - (p + 1));
-    m_colWidth1 = s.toInt(0, 10);
+    m_colWidth1 = s.toInt(nullptr, 10);
 
     s = ts.readLine();
     p = s.find("=", 0);
     s = s.right(s.length() - (p + 1));
-    m_colWidth2 = s.toInt(0, 10);
+    m_colWidth2 = s.toInt(nullptr, 10);
 
     s = ts.readLine();
     p = s.find("=", 0);
     s = s.right(s.length() - (p + 1));
-    m_numRows = (s.toInt(0, 10) - 1); //We need to reduce by one since the header is not included
+    m_numRows = (s.toInt(nullptr, 10) - 1); //We need to reduce by one since the header is not included
 
     // Selection
     s = ts.readLine();
     p = s.find("=", 0);
     s = s.right(s.length() - (p + 1));
-    m_topLeft =s.toInt(0, 10) - 1;
+    m_topLeft =s.toInt(nullptr, 10) - 1;
 
     s = ts.readLine();
     p = s.find("=", 0);
     s = s.right(s.length() - (p + 1));
-    m_topRight =s.toInt(0, 10) - 1;
+    m_topRight =s.toInt(nullptr, 10) - 1;
 
     s = ts.readLine();
     p = s.find("=", 0);
     s = s.right(s.length() - (p + 1));
-    m_bottomLeft =s.toInt(0, 10) - 1;
+    m_bottomLeft =s.toInt(nullptr, 10) - 1;
 
     s = ts.readLine();
     p = s.find("=", 0);
     s = s.right(s.length() - (p + 1));
-    m_bottomRight =s.toInt(0, 10) - 1 ;
+    m_bottomRight =s.toInt(nullptr, 10) - 1 ;
 
     while (ts.readLine() != "[Vocabulary]");
 
@@ -159,7 +159,7 @@ KWqlDataItemList WqlReader::parse(const TQString &fileName)
       s = ts.readLine();
       p = s.find("[", 0);
       TQString r = s.mid(p + 1, 10);
-      int h = r.toInt(0, 10);
+      int h = r.toInt(nullptr, 10);
       s = s.left(p);
       s = s.stripWhiteSpace();
       
diff --git a/kwordquiz/src/wqprintdialogpage.h b/kwordquiz/src/wqprintdialogpage.h
index 0ee89549..01ae6dfd 100644
--- a/kwordquiz/src/wqprintdialogpage.h
+++ b/kwordquiz/src/wqprintdialogpage.h
@@ -32,7 +32,7 @@ class WQPrintDialogPage : public KPrintDialogPage
 TQ_OBJECT
   
 public:
-    WQPrintDialogPage( TQWidget *parent = 0, const char *name = 0 );
+    WQPrintDialogPage( TQWidget *parent = nullptr, const char *name = nullptr );
 
     ~WQPrintDialogPage();
    //reimplement virtual functions
diff --git a/kwordquiz/src/wqquiz.h b/kwordquiz/src/wqquiz.h
index 6f3337d4..ee500897 100644
--- a/kwordquiz/src/wqquiz.h
+++ b/kwordquiz/src/wqquiz.h
@@ -38,7 +38,7 @@ class WQQuiz : public TQObject
     enum QuizType {qtEditor, qtFlash, qtMultiple, qtQA};
     enum QuizIcon {qiLeftCol, qiRightCol, qiQuestion, qiCorrect, qiError};
 
-    WQQuiz(KWordQuizView * parent, const char * name=0);
+    WQQuiz(KWordQuizView * parent, const char * name=nullptr);
 
     void activateErrorList();
     void activateBaseList();
diff --git a/libtdeedu/extdate/extcalendarsystem.h b/libtdeedu/extdate/extcalendarsystem.h
index 82b35a37..4af10b28 100644
--- a/libtdeedu/extdate/extcalendarsystem.h
+++ b/libtdeedu/extdate/extcalendarsystem.h
@@ -51,7 +51,7 @@ public:
    *
    * @param locale It will use this locale for translations, 0 means global.
    */
-  ExtCalendarSystem(const TDELocale * locale = 0);
+  ExtCalendarSystem(const TDELocale * locale = nullptr);
 
   /**
    * Descructor.
@@ -231,7 +231,7 @@ public:
    * @param yearNum The year the date belongs to
    * @return week number
    */
-  virtual int weekNumber(const ExtDate& date, int * yearNum = 0) const = 0;
+  virtual int weekNumber(const ExtDate& date, int * yearNum = nullptr) const = 0;
 
   /**
    * Gets specific calendar type month name for a given month number
diff --git a/libtdeedu/extdate/extcalendarsystemgregorian.h b/libtdeedu/extdate/extcalendarsystemgregorian.h
index 6c3dabc7..b31a270c 100644
--- a/libtdeedu/extdate/extcalendarsystemgregorian.h
+++ b/libtdeedu/extdate/extcalendarsystemgregorian.h
@@ -48,7 +48,7 @@ class ExtCalendarSystemGregorianPrivate;
 class ExtCalendarSystemGregorian: public ExtCalendarSystem
 {
 public:
-  ExtCalendarSystemGregorian (const TDELocale * locale = 0);
+  ExtCalendarSystemGregorian (const TDELocale * locale = nullptr);
   virtual ~ExtCalendarSystemGregorian ();
 
   virtual int year (const ExtDate & date) const;
@@ -68,7 +68,7 @@ public:
   virtual int daysInYear (const ExtDate & date) const;
   virtual int daysInMonth (const ExtDate & date) const;
   virtual int weeksInYear(int year) const;
-  virtual int weekNumber(const ExtDate& date, int * yearNum = 0) const;
+  virtual int weekNumber(const ExtDate& date, int * yearNum = nullptr) const;
 
   virtual int yearStringToInteger(const TQString & sNum, int & iLength) const;
 
diff --git a/libtdeedu/extdate/extdatepicker.cpp b/libtdeedu/extdate/extdatepicker.cpp
index b8874d75..4afbc531 100644
--- a/libtdeedu/extdate/extdatepicker.cpp
+++ b/libtdeedu/extdate/extdatepicker.cpp
@@ -43,8 +43,8 @@
 class ExtDatePicker::ExtDatePickerPrivate
 {
 public:
-    ExtDatePickerPrivate() : closeButton(0L), selectWeek(0L), todayButton(0),
-      navigationLayout(0), calendar(0) {}
+    ExtDatePickerPrivate() : closeButton(nullptr), selectWeek(nullptr), todayButton(nullptr),
+      navigationLayout(nullptr), calendar(nullptr) {}
 
     void fillWeeksCombo(const ExtDate &date);
 
@@ -501,7 +501,7 @@ ExtDatePicker::setFontSize(int s)
 void
 ExtDatePicker::setCloseButton( bool enable )
 {
-    if ( enable == (d->closeButton != 0L) )
+    if ( enable == (d->closeButton != nullptr) )
         return;
 
     if ( enable ) {
@@ -516,7 +516,7 @@ ExtDatePicker::setCloseButton( bool enable )
     }
     else {
         delete d->closeButton;
-        d->closeButton = 0L;
+        d->closeButton = nullptr;
     }
 
     updateGeometry();
@@ -524,7 +524,7 @@ ExtDatePicker::setCloseButton( bool enable )
 
 bool ExtDatePicker::hasCloseButton() const
 {
-    return (d->closeButton != 0L);
+    return (d->closeButton != nullptr);
 }
 
 void ExtDatePicker::virtual_hook( int /*id*/, void* /*data*/ )
diff --git a/libtdeedu/extdate/extdatepicker.h b/libtdeedu/extdate/extdatepicker.h
index 29d35b5c..1bb4ce67 100644
--- a/libtdeedu/extdate/extdatepicker.h
+++ b/libtdeedu/extdate/extdatepicker.h
@@ -61,9 +61,9 @@ public:
   /** The usual constructor.  The given date will be displayed
    * initially.
    **/
-  ExtDatePicker(TQWidget *parent=0,
+  ExtDatePicker(TQWidget *parent=nullptr,
 	      ExtDate=ExtDate::currentDate(),
-	      const char *name=0);
+	      const char *name=nullptr);
 
   /** The usual constructor.  The given date will be displayed
    * initially.
diff --git a/libtdeedu/extdate/extdatetbl.cpp b/libtdeedu/extdate/extdatetbl.cpp
index 662e8a7c..beabc29e 100644
--- a/libtdeedu/extdate/extdatetbl.cpp
+++ b/libtdeedu/extdate/extdatetbl.cpp
@@ -876,7 +876,7 @@ ExtDateInternalYearSelector::setYear(int year)
 TDEPopupFrame::TDEPopupFrame(TQWidget* parent, const char*  name)
   : TQFrame(parent, name, WType_Popup),
     result(0), // rejected
-    main(0)
+    main(nullptr)
 {
   setFrameStyle(TQFrame::Box|TQFrame::Raised);
   setMidLineWidth(2);
@@ -903,7 +903,7 @@ void
 TDEPopupFrame::setMainWidget(TQWidget* m)
 {
   main=m;
-  if(main!=0)
+  if(main)
     {
       resize(main->width()+2*frameWidth(), main->height()+2*frameWidth());
     }
@@ -912,7 +912,7 @@ TDEPopupFrame::setMainWidget(TQWidget* m)
 void
 TDEPopupFrame::resizeEvent(TQResizeEvent*)
 {
-  if(main!=0)
+  if(main)
     {
       main->setGeometry(frameWidth(), frameWidth(),
           width()-2*frameWidth(), height()-2*frameWidth());
diff --git a/libtdeedu/extdate/extdatetbl.h b/libtdeedu/extdate/extdatetbl.h
index 0c931824..a05111ec 100644
--- a/libtdeedu/extdate/extdatetbl.h
+++ b/libtdeedu/extdate/extdatetbl.h
@@ -51,7 +51,7 @@ public slots:
 signals:
   void closeMe(int);
 public:
-  ExtDateInternalWeekSelector( TQWidget* parent=0, const char* name=0);
+  ExtDateInternalWeekSelector( TQWidget* parent=nullptr, const char* name=nullptr);
   int getWeek();
   void setWeek(int week);
 
@@ -93,7 +93,7 @@ public:
   /**
    * The constructor.
    */
-  ExtDateInternalMonthPicker(const ExtDate& date, TQWidget* parent, const char* name=0);
+  ExtDateInternalMonthPicker(const ExtDate& date, TQWidget* parent, const char* name=nullptr);
   /**
    * The destructor.
    */
@@ -152,7 +152,7 @@ public slots:
 signals:
   void closeMe(int);
 public:
-  ExtDateInternalYearSelector( TQWidget* parent=0, const char* name=0);
+  ExtDateInternalYearSelector( TQWidget* parent=nullptr, const char* name=nullptr);
   ~ExtDateInternalYearSelector();
 	int getYear();
   void setYear(int year);
@@ -204,7 +204,7 @@ public:
   /**
    * The contructor. Creates a dialog without buttons.
    */
-  TDEPopupFrame(TQWidget* parent=0, const char*  name=0);
+  TDEPopupFrame(TQWidget* parent=nullptr, const char*  name=nullptr);
   /**
    * Set the main widget. You cannot set the main widget from the constructor,
    * since it must be a child of the frame itselfes.
@@ -247,7 +247,7 @@ private:
 class ExtDateValidator : public TQValidator
 {
 public:
-    ExtDateValidator(TQWidget* parent=0, const char* name=0);
+    ExtDateValidator(TQWidget* parent=nullptr, const char* name=nullptr);
     virtual State validate(TQString&, int&) const;
     virtual void fixup ( TQString & input ) const;
     State date(const TQString&, ExtDate&) const;
@@ -277,9 +277,9 @@ public:
     /**
      * The constructor.
      */
-    ExtDateTable(TQWidget *parent=0,
+    ExtDateTable(TQWidget *parent=nullptr,
 	       ExtDate date=ExtDate::currentDate(),
-	       const char* name=0, WFlags f=0);
+	       const char* name=nullptr, WFlags f=0);
 
     /**
      * The destructor.
diff --git a/libtdeedu/extdate/extdatetime.cpp b/libtdeedu/extdate/extdatetime.cpp
index 696e7d84..51b197f2 100644
--- a/libtdeedu/extdate/extdatetime.cpp
+++ b/libtdeedu/extdate/extdatetime.cpp
@@ -724,7 +724,7 @@ void ExtDateTime::setTime_t( uint secsSince1Jan1970UTC )
 void ExtDateTime::setTime_t( uint secsSince1Jan1970UTC, TQt::TimeSpec ts )
 {
     time_t tmp = (time_t) secsSince1Jan1970UTC;
-    tm *brokenDown = 0;
+    tm *brokenDown = nullptr;
 
 #if defined(Q_OS_UNIX) && defined(TQT_THREAD_SUPPORT) && defined(_POSIX_THREAD_SAFE_FUNCTIONS)
     // posix compliant system
diff --git a/libtdeedu/extdate/extdatetime.h b/libtdeedu/extdate/extdatetime.h
index d07eaa4a..a0bf8f57 100644
--- a/libtdeedu/extdate/extdatetime.h
+++ b/libtdeedu/extdate/extdatetime.h
@@ -54,7 +54,7 @@ public:
 	int dayOfYear() const;
 	int daysInMonth() const;
 	int daysInYear() const;
-	int weekNumber( int *yearNum = 0 ) const;
+	int weekNumber( int *yearNum = nullptr ) const;
 	long int jd() const { return m_jd; }
 
 #ifndef TQT_NO_TEXTDATE
diff --git a/libtdeedu/extdate/extdatetimeedit.cpp b/libtdeedu/extdate/extdatetimeedit.cpp
index 4a7527aa..5d3af52d 100644
--- a/libtdeedu/extdate/extdatetimeedit.cpp
+++ b/libtdeedu/extdate/extdatetimeedit.cpp
@@ -40,24 +40,24 @@
 
 #define EXTDATETIMEEDIT_HIDDEN_CHAR '0'
 
-static TQString	*lDateSep = 0;
-static TQString	*lTimeSep = 0;
+static TQString	*lDateSep = nullptr;
+static TQString	*lTimeSep = nullptr;
 static bool	lAMPM	  = false;
-static TQString	*lAM	  = 0;
-static TQString	*lPM	  = 0;
+static TQString	*lAM	  = nullptr;
+static TQString	*lPM	  = nullptr;
 static ExtDateEdit::Order	lOrder = ExtDateEdit::YMD;
 static int refcount = 0;
 
 static void cleanup()
 {
     delete lDateSep;
-    lDateSep = 0;
+    lDateSep = nullptr;
     delete lTimeSep;
-    lTimeSep = 0;
+    lTimeSep = nullptr;
     delete lAM;
-    lAM = 0;
+    lAM = nullptr;
     delete lPM;
-    lPM = 0;
+    lPM = nullptr;
 }
 
 /*!
@@ -180,11 +180,11 @@ class ExtDateTimeEditorPrivate
 public:
     ExtDateTimeEditorPrivate()
 	: frm( true ),
-	  parag( new TQTextParagraph( 0, 0, 0, false ) ),
+	  parag( new TQTextParagraph( nullptr, nullptr, nullptr, false ) ),
 	  focusSec(0)
     {
 	parag->formatter()->setWrapEnabled( false );
-	cursor = new TQTextCursor( 0 );
+	cursor = new TQTextCursor( nullptr );
 	cursor->setParagraph( parag );
 	offset = 0;
 	sep = localDateSep();
@@ -302,7 +302,7 @@ public:
 	    yoff = 0;
 
 	p.translate( xoff, yoff );
-	parag->paint( p, cg, 0, true );
+	parag->paint( p, cg, nullptr, true );
 	if ( frm )
 	    p.translate( -xoff, -yoff );
     }
diff --git a/libtdeedu/extdate/extdatetimeedit.h b/libtdeedu/extdate/extdatetimeedit.h
index 0247709e..5541ee82 100644
--- a/libtdeedu/extdate/extdatetimeedit.h
+++ b/libtdeedu/extdate/extdatetimeedit.h
@@ -40,7 +40,7 @@ class ExtDateTimeEditBase : public TQWidget
     TQ_OBJECT
   
 public:
-    ExtDateTimeEditBase( TQWidget* parent=0, const char* name=0 )
+    ExtDateTimeEditBase( TQWidget* parent=nullptr, const char* name=nullptr )
 	: TQWidget( parent, name ) {}
 
     virtual bool setFocusSection( int sec ) = 0;
@@ -73,8 +73,8 @@ class TDE_EXPORT ExtDateEdit : public ExtDateTimeEditBase
 //    TQ_PROPERTY( ExtDate minValue READ minValue WRITE setMinValue )
 
 public:
-    ExtDateEdit( TQWidget* parent=0,  const char* name=0 );
-    ExtDateEdit( const ExtDate& date, TQWidget* parent=0,  const char* name=0 );
+    ExtDateEdit( TQWidget* parent=nullptr,  const char* name=nullptr );
+    ExtDateEdit( const ExtDate& date, TQWidget* parent=nullptr,  const char* name=nullptr );
     ~ExtDateEdit();
 
     enum Order { DMY /**< Day-Month-Year */, 
@@ -237,9 +237,9 @@ class TDE_EXPORT ExtDateTimeEdit : public TQWidget
 //    TQ_PROPERTY( ExtDateTime dateTime READ dateTime WRITE setDateTime )
 
 public:
-    ExtDateTimeEdit( TQWidget* parent=0, const char* name=0 );
-    ExtDateTimeEdit( const ExtDateTime& datetime, TQWidget* parent=0,
-		   const char* name=0 );
+    ExtDateTimeEdit( TQWidget* parent=nullptr, const char* name=nullptr );
+    ExtDateTimeEdit( const ExtDateTime& datetime, TQWidget* parent=nullptr,
+		   const char* name=nullptr );
     ~ExtDateTimeEdit();
 
     TQSize sizeHint() const;
@@ -309,8 +309,8 @@ class ExtDateTimeEditor : public TQWidget
     TQ_OBJECT
   
 public:
-    ExtDateTimeEditor( ExtDateTimeEditBase * parent=0,
-		       const char * name=0 );
+    ExtDateTimeEditor( ExtDateTimeEditBase * parent=nullptr,
+		       const char * name=nullptr );
     ~ExtDateTimeEditor();
 
 //    void setControlWidget( ExtDateTimeEditBase * widget );
diff --git a/libtdeedu/extdate/extdatewidget.h b/libtdeedu/extdate/extdatewidget.h
index acc02713..5783bc9d 100644
--- a/libtdeedu/extdate/extdatewidget.h
+++ b/libtdeedu/extdate/extdatewidget.h
@@ -42,12 +42,12 @@ public:
   /**
    * Constructs a date selection widget, initialized to the current CPU date.
    */
-  ExtDateWidget( TQWidget *parent=0, const char *name=0 );
+  ExtDateWidget( TQWidget *parent=nullptr, const char *name=nullptr );
 
   /**
    * Constructs a date selection widget with the initial date set to @p date.
    */
-  ExtDateWidget( const ExtDate &date, TQWidget *parent=0, const char *name=0 );
+  ExtDateWidget( const ExtDate &date, TQWidget *parent=nullptr, const char *name=nullptr );
 
   /**
    * Destructs the date selection widget.
diff --git a/libtdeedu/extdate/main.cpp b/libtdeedu/extdate/main.cpp
index c444d655..6068df06 100644
--- a/libtdeedu/extdate/main.cpp
+++ b/libtdeedu/extdate/main.cpp
@@ -17,13 +17,13 @@ int main( int argc, char *argv[] )
 				"0.1", description, TDEAboutData::License_GPL,
 				I18N_NOOP("(c) 2004, Jason Harris"), notice,
 				"http://30doradus.org");
-	aboutData.addAuthor("Jason Harris", 0,
+	aboutData.addAuthor("Jason Harris", nullptr,
 				"jharris@30doradus.org", "http://www.30doradus.org");
 
 	TDECmdLineArgs::init( argc, argv, &aboutData );
 
 	TDEApplication a;
-	TestWidget *t = new TestWidget(0,0);
+	TestWidget *t = new TestWidget(nullptr,nullptr);
 	t->show();
 	TQObject::connect(tdeApp, TQ_SIGNAL(lastWindowClosed()), tdeApp, TQ_SLOT(quit()));
 	return a.exec();
diff --git a/libtdeedu/tdeeduplot/kplotwidget.h b/libtdeedu/tdeeduplot/kplotwidget.h
index 98566edd..378aa2b1 100644
--- a/libtdeedu/tdeeduplot/kplotwidget.h
+++ b/libtdeedu/tdeeduplot/kplotwidget.h
@@ -50,7 +50,7 @@ public:
 		*@param parent the parent widget
 		*@param name name label for the KPlotWidget
 		*/
-	KPlotWidget( double x1=0.0, double x2=1.0, double y1=0.0, double y2=1.0, TQWidget *parent=0, const char* name=0 );
+	KPlotWidget( double x1=0.0, double x2=1.0, double y1=0.0, double y2=1.0, TQWidget *parent=nullptr, const char* name=nullptr );
 
 	/**Destructor (empty)
 		*/
diff --git a/libtdeedu/tdeeduui/tdeeduglossary.cpp b/libtdeedu/tdeeduui/tdeeduglossary.cpp
index 9ae67588..37a459cb 100644
--- a/libtdeedu/tdeeduui/tdeeduglossary.cpp
+++ b/libtdeedu/tdeeduui/tdeeduglossary.cpp
@@ -174,7 +174,7 @@ GlossaryDialog::GlossaryDialog( bool folded, TQWidget *parent, const char *name)
 	TQVBoxLayout *vbox = new TQVBoxLayout( plainPage(), 0, KDialog::spacingHint() );
 	vbox->activate();
 
-	TQHBoxLayout *hbox = new TQHBoxLayout( 0L, 0, KDialog::spacingHint() );
+	TQHBoxLayout *hbox = new TQHBoxLayout( nullptr, 0, KDialog::spacingHint() );
 	hbox->activate();
 
 	TQToolButton *clear = new TQToolButton( plainPage() );
@@ -185,7 +185,7 @@ GlossaryDialog::GlossaryDialog( bool folded, TQWidget *parent, const char *name)
 	lbl->setText( i18n( "Search:" ) );
 	hbox->addWidget( lbl );
 
-	m_search = new TDEListViewSearchLine( plainPage(), 0, "search-line" );
+	m_search = new TDEListViewSearchLine( plainPage(), nullptr, "search-line" );
 	hbox->addWidget( m_search );
 	vbox->addLayout( hbox );
 	setFocusProxy(m_search);
@@ -228,7 +228,7 @@ void GlossaryDialog::displayItem( const KURL& url, const KParts::URLArgs& )
 	TQString myurl = url.host().lower();
 	m_search->setText( "" );
 	m_search->updateSearch( "" );
-	TQListViewItem *found = 0;
+	TQListViewItem *found = nullptr;
 	TQListViewItemIterator it( m_glosstree );
 	TQListViewItem *item;
 	while ( it.current() )
@@ -310,7 +310,7 @@ TQListViewItem* GlossaryDialog::findTreeWithLetter( const TQChar& l, TQListViewI
 			return it;
 		it = it->nextSibling();
 	}
-	return 0;
+	return nullptr;
 }
 
 void GlossaryDialog::slotClicked( TQListViewItem *item )
@@ -326,7 +326,7 @@ void GlossaryDialog::slotClicked( TQListViewItem *item )
 	TQValueList<Glossary*>::iterator itGl = m_glossaries.begin();
 	const TQValueList<Glossary*>::iterator itGlEnd = m_glossaries.end();
 	bool found = false;
-	GlossaryItem *i = 0;
+	GlossaryItem *i = nullptr;
 
 	TQString bg_picture;
 	
diff --git a/libtdeedu/tdeeduui/tdeeduglossary.h b/libtdeedu/tdeeduui/tdeeduglossary.h
index cef411b5..736747ad 100644
--- a/libtdeedu/tdeeduui/tdeeduglossary.h
+++ b/libtdeedu/tdeeduui/tdeeduglossary.h
@@ -94,7 +94,7 @@ class TDE_EXPORT Glossary
 		 * @return a pointer to the loaded glossary. Even in case of
 		 *         error, this won't return 0 but an empty Glossary.
 		 */
-		static Glossary* readFromXML( const KURL& url, const TQString& path = 0 );
+		static Glossary* readFromXML( const KURL& url, const TQString& path = nullptr );
 
 		/**
 		 * Every glossaryitem can show pictures. [img src="foo.png]
@@ -243,7 +243,7 @@ class TDE_EXPORT GlossaryDialog : public KDialogBase
   
 
 	public:
-		GlossaryDialog( bool folded = true, TQWidget *parent=0, const char *name=0);
+		GlossaryDialog( bool folded = true, TQWidget *parent=nullptr, const char *name=nullptr);
 		~GlossaryDialog();
 
 		void keyPressEvent(TQKeyEvent*);
-- 
cgit v1.2.3

