From: Ed Tomlinson <edt@aei.ca>
To: Alexander Stein <alexander.stein@informatik.tu-chemnitz.de>
Cc: Michal Marek <mmarek@suse.cz>,
linux-kbuild@vger.kernel.org,
Roman Zippel <zippel@linux-m68k.org>,
lkml <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH] kconfig qconf: port to QT4
Date: Mon, 2 Aug 2010 08:01:23 -0400 [thread overview]
Message-ID: <201008020801.24130.edt@aei.ca> (raw)
In-Reply-To: <1280690915-16380-1-git-send-email-alexander.stein@informatik.tu-chemnitz.de>
Hi,
Works as advertised here. The merge window for .36 is open. Would it be possible for this to be included?
Thanks,
Ed Tomlinson
On Sunday 01 August 2010 15:28:35 Alexander Stein wrote:
> A straight forward port to QT4 using qt3to4 and compiling against
> qt3support
>
> * rewritten makefile rules to detect QT4 by using qmake which is hopefully
> portable enough
> * If no QT4, QT3 will by tried instead
> * Classes renamed using qt3to4
> * If build using QT3 renamed to QT3 class names using defines
> * ConfigInfoView::menu has to be renamed as QT4 moc strips struct from
> struct menu and creates a name conflict
>
> Signed-off-by: Alexander Stein <alexander.stein@informatik.tu-chemnitz.de>
> ---
> This patch is pretty the same as in 1280488517-30116-1-git-send-email-alexander.stein@informatik.tu-chemnitz.de.
> But this is based on v2.6.35-rc6, hence hidden option feature is missin.
>
> scripts/kconfig/Makefile | 77 +++++++++++++----------
> scripts/kconfig/qconf.cc | 160 ++++++++++++++++++++++++---------------------
> scripts/kconfig/qconf.h | 76 ++++++++++------------
> 3 files changed, 165 insertions(+), 148 deletions(-)
>
> diff --git a/scripts/kconfig/Makefile b/scripts/kconfig/Makefile
> index 7ea649d..78829ac 100644
> --- a/scripts/kconfig/Makefile
> +++ b/scripts/kconfig/Makefile
> @@ -233,40 +233,51 @@ $(obj)/.tmp_qtcheck: $(src)/Makefile
> # QT needs some extra effort...
> $(obj)/.tmp_qtcheck:
> @set -e; echo " CHECK qt"; dir=""; pkg=""; \
> - pkg-config --exists qt 2> /dev/null && pkg=qt; \
> - pkg-config --exists qt-mt 2> /dev/null && pkg=qt-mt; \
> - if [ -n "$$pkg" ]; then \
> - cflags="\$$(shell pkg-config $$pkg --cflags)"; \
> - libs="\$$(shell pkg-config $$pkg --libs)"; \
> - moc="\$$(shell pkg-config $$pkg --variable=prefix)/bin/moc"; \
> - dir="$$(pkg-config $$pkg --variable=prefix)"; \
> + pkg-config --exists QtCore 2> /dev/null; \
> + if [ ! $? ]; then \
> + echo "* Unable to find the QT4 tool qmake. Trying to use QT3"; \
> + pkg-config --exists qt 2> /dev/null && pkg=qt; \
> + pkg-config --exists qt-mt 2> /dev/null && pkg=qt-mt; \
> + if [ -n "$$pkg" ]; then \
> + cflags="\$$(shell pkg-config $$pkg --cflags)"; \
> + libs="\$$(shell pkg-config $$pkg --libs)"; \
> + moc="\$$(shell pkg-config $$pkg --variable=prefix)/bin/moc"; \
> + dir="$$(pkg-config $$pkg --variable=prefix)"; \
> + else \
> + for d in $$QTDIR /usr/share/qt* /usr/lib/qt*; do \
> + if [ -f $$d/include/qconfig.h ]; then dir=$$d; break; fi; \
> + done; \
> + if [ -z "$$dir" ]; then \
> + echo "*"; \
> + echo "* Unable to find any QT installation. Please make sure that"; \
> + echo "* the QT4 or QT3 development package is correctly installed and"; \
> + echo "* either qmake can be found or install pkg-config or set"; \
> + echo "* the QTDIR environment variable to the correct location."; \
> + echo "*"; \
> + false; \
> + fi; \
> + libpath=$$dir/lib; lib=qt; osdir=""; \
> + $(HOSTCXX) -print-multi-os-directory > /dev/null 2>&1 && \
> + osdir=x$$($(HOSTCXX) -print-multi-os-directory); \
> + test -d $$libpath/$$osdir && libpath=$$libpath/$$osdir; \
> + test -f $$libpath/libqt-mt.so && lib=qt-mt; \
> + cflags="-I$$dir/include"; \
> + libs="-L$$libpath -Wl,-rpath,$$libpath -l$$lib"; \
> + moc="$$dir/bin/moc"; \
> + fi; \
> + if [ ! -x $$dir/bin/moc -a -x /usr/bin/moc ]; then \
> + echo "*"; \
> + echo "* Unable to find $$dir/bin/moc, using /usr/bin/moc instead."; \
> + echo "*"; \
> + moc="/usr/bin/moc"; \
> + fi; \
> else \
> - for d in $$QTDIR /usr/share/qt* /usr/lib/qt*; do \
> - if [ -f $$d/include/qconfig.h ]; then dir=$$d; break; fi; \
> - done; \
> - if [ -z "$$dir" ]; then \
> - echo "*"; \
> - echo "* Unable to find the QT3 installation. Please make sure that"; \
> - echo "* the QT3 development package is correctly installed and"; \
> - echo "* either install pkg-config or set the QTDIR environment"; \
> - echo "* variable to the correct location."; \
> - echo "*"; \
> - false; \
> - fi; \
> - libpath=$$dir/lib; lib=qt; osdir=""; \
> - $(HOSTCXX) -print-multi-os-directory > /dev/null 2>&1 && \
> - osdir=x$$($(HOSTCXX) -print-multi-os-directory); \
> - test -d $$libpath/$$osdir && libpath=$$libpath/$$osdir; \
> - test -f $$libpath/libqt-mt.so && lib=qt-mt; \
> - cflags="-I$$dir/include"; \
> - libs="-L$$libpath -Wl,-rpath,$$libpath -l$$lib"; \
> - moc="$$dir/bin/moc"; \
> - fi; \
> - if [ ! -x $$dir/bin/moc -a -x /usr/bin/moc ]; then \
> - echo "*"; \
> - echo "* Unable to find $$dir/bin/moc, using /usr/bin/moc instead."; \
> - echo "*"; \
> - moc="/usr/bin/moc"; \
> + headerpath="\$$(shell qmake -query QT_INSTALL_HEADERS)"; \
> + libpath="\$$(shell qmake -query QT_INSTALL_LIBS)"; \
> + binpath="\$$(shell qmake -query QT_INSTALL_BINS)"; \
> + cflags="-I$$headerpath -I$$headerpath/QtCore -I$$headerpath/QtGui -I$$headerpath/Qt3Support -DQT3_SUPPORT"; \
> + libs="-L$$libpath -Wl,-rpath,$$libpath -lQtCore -lQtGui -lQt3Support"; \
> + moc="$$binpath/moc"; \
> fi; \
> echo "KC_QT_CFLAGS=$$cflags" > $@; \
> echo "KC_QT_LIBS=$$libs" >> $@; \
> diff --git a/scripts/kconfig/qconf.cc b/scripts/kconfig/qconf.cc
> index 00c5150..da38ff2 100644
> --- a/scripts/kconfig/qconf.cc
> +++ b/scripts/kconfig/qconf.cc
> @@ -3,25 +3,42 @@
> * Released under the terms of the GNU GPL v2.0.
> */
>
> -#include <qapplication.h>
> +#include <qglobal.h>
> +
> +#if QT_VERSION < 0x040000
> #include <qmainwindow.h>
> +#include <qvbox.h>
> +#include <qvaluelist.h>
> +#include <qtextbrowser.h>
> +#include <qaction.h>
> +#include <qheader.h>
> +#include <qfiledialog.h>
> +#include <qdragobject.h>
> +#include <qpopupmenu.h>
> +#else
> +#include <q3mainwindow.h>
> +#include <q3vbox.h>
> +#include <q3valuelist.h>
> +#include <q3textbrowser.h>
> +#include <q3action.h>
> +#include <q3header.h>
> +#include <q3filedialog.h>
> +#include <q3dragobject.h>
> +#include <q3popupmenu.h>
> +#endif
> +
> +#include <qapplication.h>
> #include <qdesktopwidget.h>
> #include <qtoolbar.h>
> #include <qlayout.h>
> -#include <qvbox.h>
> #include <qsplitter.h>
> -#include <qlistview.h>
> -#include <qtextbrowser.h>
> #include <qlineedit.h>
> #include <qlabel.h>
> #include <qpushbutton.h>
> #include <qmenubar.h>
> #include <qmessagebox.h>
> -#include <qaction.h>
> -#include <qheader.h>
> -#include <qfiledialog.h>
> -#include <qdragobject.h>
> #include <qregexp.h>
> +#include <qevent.h>
>
> #include <stdlib.h>
>
> @@ -39,7 +56,7 @@
> static QApplication *configApp;
> static ConfigSettings *configSettings;
>
> -QAction *ConfigMainWindow::saveAction;
> +Q3Action *ConfigMainWindow::saveAction;
>
> static inline QString qgettext(const char* str)
> {
> @@ -54,9 +71,9 @@ static inline QString qgettext(const QString& str)
> /**
> * Reads a list of integer values from the application settings.
> */
> -QValueList<int> ConfigSettings::readSizes(const QString& key, bool *ok)
> +Q3ValueList<int> ConfigSettings::readSizes(const QString& key, bool *ok)
> {
> - QValueList<int> result;
> + Q3ValueList<int> result;
> QStringList entryList = readListEntry(key, ok);
> if (ok) {
> QStringList::Iterator it;
> @@ -70,10 +87,10 @@ QValueList<int> ConfigSettings::readSizes(const QString& key, bool *ok)
> /**
> * Writes a list of integer values to the application settings.
> */
> -bool ConfigSettings::writeSizes(const QString& key, const QValueList<int>& value)
> +bool ConfigSettings::writeSizes(const QString& key, const Q3ValueList<int>& value)
> {
> QStringList stringList;
> - QValueList<int>::ConstIterator it;
> + Q3ValueList<int>::ConstIterator it;
>
> for (it = value.begin(); it != value.end(); ++it)
> stringList.push_back(QString::number(*it));
> @@ -81,7 +98,6 @@ bool ConfigSettings::writeSizes(const QString& key, const QValueList<int>& value
> }
>
>
> -#if QT_VERSION >= 300
> /*
> * set the new data
> * TODO check the value
> @@ -92,7 +108,6 @@ void ConfigItem::okRename(int col)
> sym_set_string_value(menu->sym, text(dataColIdx).latin1());
> listView()->updateList(this);
> }
> -#endif
>
> /*
> * update the displayed of a menu entry
> @@ -196,11 +211,9 @@ void ConfigItem::updateMenu(void)
>
> data = sym_get_string_value(sym);
>
> -#if QT_VERSION >= 300
> int i = list->mapIdx(dataColIdx);
> if (i >= 0)
> setRenameEnabled(i, TRUE);
> -#endif
> setText(dataColIdx, data);
> if (type == S_STRING)
> prompt = QString("%1: %2").arg(prompt).arg(data);
> @@ -422,7 +435,7 @@ void ConfigList::updateList(ConfigItem* item)
> if (!rootEntry) {
> if (mode != listMode)
> goto update;
> - QListViewItemIterator it(this);
> + Q3ListViewItemIterator it(this);
> ConfigItem* item;
>
> for (; it.current(); ++it) {
> @@ -517,11 +530,9 @@ void ConfigList::changeValue(ConfigItem* item)
> case S_INT:
> case S_HEX:
> case S_STRING:
> -#if QT_VERSION >= 300
> if (colMap[dataColIdx] >= 0)
> item->startRename(colMap[dataColIdx]);
> else
> -#endif
> parent()->lineEdit->show(item);
> break;
> }
> @@ -553,7 +564,7 @@ void ConfigList::setParentMenu(void)
> return;
> setRootMenu(menu_get_parent_menu(rootEntry->parent));
>
> - QListViewItemIterator it(this);
> + Q3ListViewItemIterator it(this);
> for (; (item = (ConfigItem*)it.current()); it++) {
> if (item->menu == oldroot) {
> setCurrentItem(item);
> @@ -635,7 +646,7 @@ void ConfigList::updateMenuList(P* parent, struct menu* menu)
>
> void ConfigList::keyPressEvent(QKeyEvent* ev)
> {
> - QListViewItem* i = currentItem();
> + Q3ListViewItem* i = currentItem();
> ConfigItem* item;
> struct menu *menu;
> enum prop_type type;
> @@ -801,10 +812,10 @@ void ConfigList::contextMenuEvent(QContextMenuEvent *e)
> {
> if (e->y() <= header()->geometry().bottom()) {
> if (!headerPopup) {
> - QAction *action;
> + Q3Action *action;
>
> - headerPopup = new QPopupMenu(this);
> - action = new QAction(NULL, _("Show Name"), 0, this);
> + headerPopup = new Q3PopupMenu(this);
> + action = new Q3Action(NULL, _("Show Name"), 0, this);
> action->setToggleAction(TRUE);
> connect(action, SIGNAL(toggled(bool)),
> parent(), SLOT(setShowName(bool)));
> @@ -812,7 +823,7 @@ void ConfigList::contextMenuEvent(QContextMenuEvent *e)
> action, SLOT(setOn(bool)));
> action->setOn(showName);
> action->addTo(headerPopup);
> - action = new QAction(NULL, _("Show Range"), 0, this);
> + action = new Q3Action(NULL, _("Show Range"), 0, this);
> action->setToggleAction(TRUE);
> connect(action, SIGNAL(toggled(bool)),
> parent(), SLOT(setShowRange(bool)));
> @@ -820,7 +831,7 @@ void ConfigList::contextMenuEvent(QContextMenuEvent *e)
> action, SLOT(setOn(bool)));
> action->setOn(showRange);
> action->addTo(headerPopup);
> - action = new QAction(NULL, _("Show Data"), 0, this);
> + action = new Q3Action(NULL, _("Show Data"), 0, this);
> action->setToggleAction(TRUE);
> connect(action, SIGNAL(toggled(bool)),
> parent(), SLOT(setShowData(bool)));
> @@ -898,7 +909,7 @@ void ConfigView::setShowData(bool b)
>
> void ConfigList::setAllOpen(bool open)
> {
> - QListViewItemIterator it(this);
> + Q3ListViewItemIterator it(this);
>
> for (; it.current(); it++)
> it.current()->setOpen(open);
> @@ -921,7 +932,7 @@ void ConfigView::updateListAll(void)
> }
>
> ConfigInfoView::ConfigInfoView(QWidget* parent, const char *name)
> - : Parent(parent, name), sym(0), menu(0)
> + : Parent(parent, name), sym(0), _menu(0)
> {
> if (name) {
> configSettings->beginGroup(name);
> @@ -944,7 +955,7 @@ void ConfigInfoView::setShowDebug(bool b)
> {
> if (_showDebug != b) {
> _showDebug = b;
> - if (menu)
> + if (_menu)
> menuInfo();
> else if (sym)
> symbolInfo();
> @@ -954,11 +965,11 @@ void ConfigInfoView::setShowDebug(bool b)
>
> void ConfigInfoView::setInfo(struct menu *m)
> {
> - if (menu == m)
> + if (_menu == m)
> return;
> - menu = m;
> + _menu = m;
> sym = NULL;
> - if (!menu)
> + if (!_menu)
> clear();
> else
> menuInfo();
> @@ -968,17 +979,17 @@ void ConfigInfoView::setSource(const QString& name)
> {
> const char *p = name.latin1();
>
> - menu = NULL;
> + _menu = NULL;
> sym = NULL;
>
> switch (p[0]) {
> case 'm':
> struct menu *m;
>
> - if (sscanf(p, "m%p", &m) == 1 && menu != m) {
> - menu = m;
> + if (sscanf(p, "m%p", &m) == 1 && _menu != m) {
> + _menu = m;
> menuInfo();
> - emit menuSelected(menu);
> + emit menuSelected(_menu);
> }
> break;
> case 's':
> @@ -1013,11 +1024,11 @@ void ConfigInfoView::menuInfo(void)
> struct symbol* sym;
> QString head, debug, help;
>
> - sym = menu->sym;
> + sym = _menu->sym;
> if (sym) {
> - if (menu->prompt) {
> + if (_menu->prompt) {
> head += "<big><b>";
> - head += print_filter(_(menu->prompt->text));
> + head += print_filter(_(_menu->prompt->text));
> head += "</b></big>";
> if (sym->name) {
> head += " (";
> @@ -1043,23 +1054,23 @@ void ConfigInfoView::menuInfo(void)
> debug = debug_info(sym);
>
> struct gstr help_gstr = str_new();
> - menu_get_ext_help(menu, &help_gstr);
> + menu_get_ext_help(_menu, &help_gstr);
> help = print_filter(str_get(&help_gstr));
> str_free(&help_gstr);
> - } else if (menu->prompt) {
> + } else if (_menu->prompt) {
> head += "<big><b>";
> - head += print_filter(_(menu->prompt->text));
> + head += print_filter(_(_menu->prompt->text));
> head += "</b></big><br><br>";
> if (showDebug()) {
> - if (menu->prompt->visible.expr) {
> + if (_menu->prompt->visible.expr) {
> debug += " dep: ";
> - expr_print(menu->prompt->visible.expr, expr_print_help, &debug, E_NONE);
> + expr_print(_menu->prompt->visible.expr, expr_print_help, &debug, E_NONE);
> debug += "<br><br>";
> }
> }
> }
> if (showDebug())
> - debug += QString().sprintf("defined at %s:%d<br><br>", menu->file->name, menu->lineno);
> + debug += QString().sprintf("defined at %s:%d<br><br>", _menu->file->name, _menu->lineno);
>
> setText(head + debug + help);
> }
> @@ -1162,10 +1173,10 @@ void ConfigInfoView::expr_print_help(void *data, struct symbol *sym, const char
> *text += str2;
> }
>
> -QPopupMenu* ConfigInfoView::createPopupMenu(const QPoint& pos)
> +Q3PopupMenu* ConfigInfoView::createPopupMenu(const QPoint& pos)
> {
> - QPopupMenu* popup = Parent::createPopupMenu(pos);
> - QAction* action = new QAction(NULL, _("Show Debug Info"), 0, popup);
> + Q3PopupMenu* popup = Parent::createPopupMenu(pos);
> + Q3Action* action = new Q3Action(NULL, _("Show Debug Info"), 0, popup);
> action->setToggleAction(TRUE);
> connect(action, SIGNAL(toggled(bool)), SLOT(setShowDebug(bool)));
> connect(this, SIGNAL(showDebugChanged(bool)), action, SLOT(setOn(bool)));
> @@ -1222,7 +1233,7 @@ ConfigSearchWindow::ConfigSearchWindow(ConfigMainWindow* parent, const char *nam
> y = configSettings->readNumEntry("/window y", 0, &ok);
> if (ok)
> move(x, y);
> - QValueList<int> sizes = configSettings->readSizes("/split", &ok);
> + Q3ValueList<int> sizes = configSettings->readSizes("/split", &ok);
> if (ok)
> split->setSizes(sizes);
> configSettings->endGroup();
> @@ -1309,60 +1320,60 @@ ConfigMainWindow::ConfigMainWindow(void)
> configList->setFocus();
>
> menu = menuBar();
> - toolBar = new QToolBar("Tools", this);
> + toolBar = new Q3ToolBar("Tools", this);
>
> - backAction = new QAction("Back", QPixmap(xpm_back), _("Back"), 0, this);
> + backAction = new Q3Action("Back", QPixmap(xpm_back), _("Back"), 0, this);
> connect(backAction, SIGNAL(activated()), SLOT(goBack()));
> backAction->setEnabled(FALSE);
> - QAction *quitAction = new QAction("Quit", _("&Quit"), Qt::CTRL + Qt::Key_Q, this);
> + Q3Action *quitAction = new Q3Action("Quit", _("&Quit"), Qt::CTRL + Qt::Key_Q, this);
> connect(quitAction, SIGNAL(activated()), SLOT(close()));
> - QAction *loadAction = new QAction("Load", QPixmap(xpm_load), _("&Load"), Qt::CTRL + Qt::Key_L, this);
> + Q3Action *loadAction = new Q3Action("Load", QPixmap(xpm_load), _("&Load"), Qt::CTRL + Qt::Key_L, this);
> connect(loadAction, SIGNAL(activated()), SLOT(loadConfig()));
> - saveAction = new QAction("Save", QPixmap(xpm_save), _("&Save"), Qt::CTRL + Qt::Key_S, this);
> + saveAction = new Q3Action("Save", QPixmap(xpm_save), _("&Save"), Qt::CTRL + Qt::Key_S, this);
> connect(saveAction, SIGNAL(activated()), SLOT(saveConfig()));
> conf_set_changed_callback(conf_changed);
> // Set saveAction's initial state
> conf_changed();
> - QAction *saveAsAction = new QAction("Save As...", _("Save &As..."), 0, this);
> + Q3Action *saveAsAction = new Q3Action("Save As...", _("Save &As..."), 0, this);
> connect(saveAsAction, SIGNAL(activated()), SLOT(saveConfigAs()));
> - QAction *searchAction = new QAction("Find", _("&Find"), Qt::CTRL + Qt::Key_F, this);
> + Q3Action *searchAction = new Q3Action("Find", _("&Find"), Qt::CTRL + Qt::Key_F, this);
> connect(searchAction, SIGNAL(activated()), SLOT(searchConfig()));
> - QAction *singleViewAction = new QAction("Single View", QPixmap(xpm_single_view), _("Single View"), 0, this);
> + Q3Action *singleViewAction = new Q3Action("Single View", QPixmap(xpm_single_view), _("Single View"), 0, this);
> connect(singleViewAction, SIGNAL(activated()), SLOT(showSingleView()));
> - QAction *splitViewAction = new QAction("Split View", QPixmap(xpm_split_view), _("Split View"), 0, this);
> + Q3Action *splitViewAction = new Q3Action("Split View", QPixmap(xpm_split_view), _("Split View"), 0, this);
> connect(splitViewAction, SIGNAL(activated()), SLOT(showSplitView()));
> - QAction *fullViewAction = new QAction("Full View", QPixmap(xpm_tree_view), _("Full View"), 0, this);
> + Q3Action *fullViewAction = new Q3Action("Full View", QPixmap(xpm_tree_view), _("Full View"), 0, this);
> connect(fullViewAction, SIGNAL(activated()), SLOT(showFullView()));
>
> - QAction *showNameAction = new QAction(NULL, _("Show Name"), 0, this);
> + Q3Action *showNameAction = new Q3Action(NULL, _("Show Name"), 0, this);
> showNameAction->setToggleAction(TRUE);
> connect(showNameAction, SIGNAL(toggled(bool)), configView, SLOT(setShowName(bool)));
> connect(configView, SIGNAL(showNameChanged(bool)), showNameAction, SLOT(setOn(bool)));
> showNameAction->setOn(configView->showName());
> - QAction *showRangeAction = new QAction(NULL, _("Show Range"), 0, this);
> + Q3Action *showRangeAction = new Q3Action(NULL, _("Show Range"), 0, this);
> showRangeAction->setToggleAction(TRUE);
> connect(showRangeAction, SIGNAL(toggled(bool)), configView, SLOT(setShowRange(bool)));
> connect(configView, SIGNAL(showRangeChanged(bool)), showRangeAction, SLOT(setOn(bool)));
> showRangeAction->setOn(configList->showRange);
> - QAction *showDataAction = new QAction(NULL, _("Show Data"), 0, this);
> + Q3Action *showDataAction = new Q3Action(NULL, _("Show Data"), 0, this);
> showDataAction->setToggleAction(TRUE);
> connect(showDataAction, SIGNAL(toggled(bool)), configView, SLOT(setShowData(bool)));
> connect(configView, SIGNAL(showDataChanged(bool)), showDataAction, SLOT(setOn(bool)));
> showDataAction->setOn(configList->showData);
> - QAction *showAllAction = new QAction(NULL, _("Show All Options"), 0, this);
> + Q3Action *showAllAction = new Q3Action(NULL, _("Show All Options"), 0, this);
> showAllAction->setToggleAction(TRUE);
> connect(showAllAction, SIGNAL(toggled(bool)), configView, SLOT(setShowAll(bool)));
> connect(showAllAction, SIGNAL(toggled(bool)), menuView, SLOT(setShowAll(bool)));
> showAllAction->setOn(configList->showAll);
> - QAction *showDebugAction = new QAction(NULL, _("Show Debug Info"), 0, this);
> + Q3Action *showDebugAction = new Q3Action(NULL, _("Show Debug Info"), 0, this);
> showDebugAction->setToggleAction(TRUE);
> connect(showDebugAction, SIGNAL(toggled(bool)), helpText, SLOT(setShowDebug(bool)));
> connect(helpText, SIGNAL(showDebugChanged(bool)), showDebugAction, SLOT(setOn(bool)));
> showDebugAction->setOn(helpText->showDebug());
>
> - QAction *showIntroAction = new QAction(NULL, _("Introduction"), 0, this);
> + Q3Action *showIntroAction = new Q3Action(NULL, _("Introduction"), 0, this);
> connect(showIntroAction, SIGNAL(activated()), SLOT(showIntro()));
> - QAction *showAboutAction = new QAction(NULL, _("About"), 0, this);
> + Q3Action *showAboutAction = new Q3Action(NULL, _("About"), 0, this);
> connect(showAboutAction, SIGNAL(activated()), SLOT(showAbout()));
>
> // init tool bar
> @@ -1376,7 +1387,7 @@ ConfigMainWindow::ConfigMainWindow(void)
> fullViewAction->addTo(toolBar);
>
> // create config menu
> - QPopupMenu* config = new QPopupMenu(this);
> + Q3PopupMenu* config = new Q3PopupMenu(this);
> menu->insertItem(_("&File"), config);
> loadAction->addTo(config);
> saveAction->addTo(config);
> @@ -1385,22 +1396,21 @@ ConfigMainWindow::ConfigMainWindow(void)
> quitAction->addTo(config);
>
> // create edit menu
> - QPopupMenu* editMenu = new QPopupMenu(this);
> + Q3PopupMenu* editMenu = new Q3PopupMenu(this);
> menu->insertItem(_("&Edit"), editMenu);
> searchAction->addTo(editMenu);
>
> // create options menu
> - QPopupMenu* optionMenu = new QPopupMenu(this);
> + Q3PopupMenu* optionMenu = new Q3PopupMenu(this);
> menu->insertItem(_("&Option"), optionMenu);
> showNameAction->addTo(optionMenu);
> showRangeAction->addTo(optionMenu);
> showDataAction->addTo(optionMenu);
> optionMenu->insertSeparator();
> showAllAction->addTo(optionMenu);
> - showDebugAction->addTo(optionMenu);
>
> // create help menu
> - QPopupMenu* helpMenu = new QPopupMenu(this);
> + Q3PopupMenu* helpMenu = new Q3PopupMenu(this);
> menu->insertSeparator();
> menu->insertItem(_("&Help"), helpMenu);
> showIntroAction->addTo(helpMenu);
> @@ -1435,7 +1445,7 @@ ConfigMainWindow::ConfigMainWindow(void)
> showSplitView();
>
> // UI setup done, restore splitter positions
> - QValueList<int> sizes = configSettings->readSizes("/split1", &ok);
> + Q3ValueList<int> sizes = configSettings->readSizes("/split1", &ok);
> if (ok)
> split1->setSizes(sizes);
>
> @@ -1446,7 +1456,7 @@ ConfigMainWindow::ConfigMainWindow(void)
>
> void ConfigMainWindow::loadConfig(void)
> {
> - QString s = QFileDialog::getOpenFileName(conf_get_configname(), NULL, this);
> + QString s = Q3FileDialog::getOpenFileName(conf_get_configname(), NULL, this);
> if (s.isNull())
> return;
> if (conf_read(QFile::encodeName(s)))
> @@ -1462,7 +1472,7 @@ void ConfigMainWindow::saveConfig(void)
>
> void ConfigMainWindow::saveConfigAs(void)
> {
> - QString s = QFileDialog::getSaveFileName(conf_get_configname(), NULL, this);
> + QString s = Q3FileDialog::getSaveFileName(conf_get_configname(), NULL, this);
> if (s.isNull())
> return;
> if (conf_write(QFile::encodeName(s)))
> diff --git a/scripts/kconfig/qconf.h b/scripts/kconfig/qconf.h
> index b3b5657..8e5848a 100644
> --- a/scripts/kconfig/qconf.h
> +++ b/scripts/kconfig/qconf.h
> @@ -3,26 +3,25 @@
> * Released under the terms of the GNU GPL v2.0.
> */
>
> +#if QT_VERSION < 0x040000
> #include <qlistview.h>
> -#if QT_VERSION >= 300
> -#include <qsettings.h>
> #else
> -class QSettings {
> -public:
> - void beginGroup(const QString& group) { }
> - void endGroup(void) { }
> - bool readBoolEntry(const QString& key, bool def = FALSE, bool* ok = 0) const
> - { if (ok) *ok = FALSE; return def; }
> - int readNumEntry(const QString& key, int def = 0, bool* ok = 0) const
> - { if (ok) *ok = FALSE; return def; }
> - QString readEntry(const QString& key, const QString& def = QString::null, bool* ok = 0) const
> - { if (ok) *ok = FALSE; return def; }
> - QStringList readListEntry(const QString& key, bool* ok = 0) const
> - { if (ok) *ok = FALSE; return QStringList(); }
> - template <class t>
> - bool writeEntry(const QString& key, t value)
> - { return TRUE; }
> -};
> +#include <q3listview.h>
> +#endif
> +#include <qsettings.h>
> +
> +#if QT_VERSION < 0x040000
> +#define Q3ValueList QValueList
> +#define Q3PopupMenu QPopupMenu
> +#define Q3ListView QListView
> +#define Q3ListViewItem QListViewItem
> +#define Q3VBox QVBox
> +#define Q3TextBrowser QTextBrowser
> +#define Q3MainWindow QMainWindow
> +#define Q3Action QAction
> +#define Q3ToolBar QToolBar
> +#define Q3ListViewItemIterator QListViewItemIterator
> +#define Q3FileDialog QFileDialog
> #endif
>
> class ConfigView;
> @@ -31,11 +30,10 @@ class ConfigItem;
> class ConfigLineEdit;
> class ConfigMainWindow;
>
> -
> class ConfigSettings : public QSettings {
> public:
> - QValueList<int> readSizes(const QString& key, bool *ok);
> - bool writeSizes(const QString& key, const QValueList<int>& value);
> + Q3ValueList<int> readSizes(const QString& key, bool *ok);
> + bool writeSizes(const QString& key, const Q3ValueList<int>& value);
> };
>
> enum colIdx {
> @@ -45,9 +43,9 @@ enum listMode {
> singleMode, menuMode, symbolMode, fullMode, listMode
> };
>
> -class ConfigList : public QListView {
> +class ConfigList : public Q3ListView {
> Q_OBJECT
> - typedef class QListView Parent;
> + typedef class Q3ListView Parent;
> public:
> ConfigList(ConfigView* p, const char *name = 0);
> void reinit(void);
> @@ -129,17 +127,17 @@ public:
> struct menu *rootEntry;
> QColorGroup disabledColorGroup;
> QColorGroup inactivedColorGroup;
> - QPopupMenu* headerPopup;
> + Q3PopupMenu* headerPopup;
>
> private:
> int colMap[colNr];
> int colRevMap[colNr];
> };
>
> -class ConfigItem : public QListViewItem {
> - typedef class QListViewItem Parent;
> +class ConfigItem : public Q3ListViewItem {
> + typedef class Q3ListViewItem Parent;
> public:
> - ConfigItem(QListView *parent, ConfigItem *after, struct menu *m, bool v)
> + ConfigItem(Q3ListView *parent, ConfigItem *after, struct menu *m, bool v)
> : Parent(parent, after), menu(m), visible(v), goParent(false)
> {
> init();
> @@ -149,16 +147,14 @@ public:
> {
> init();
> }
> - ConfigItem(QListView *parent, ConfigItem *after, bool v)
> + ConfigItem(Q3ListView *parent, ConfigItem *after, bool v)
> : Parent(parent, after), menu(0), visible(v), goParent(true)
> {
> init();
> }
> ~ConfigItem(void);
> void init(void);
> -#if QT_VERSION >= 300
> void okRename(int col);
> -#endif
> void updateMenu(void);
> void testUpdateMenu(bool v);
> ConfigList* listView() const
> @@ -213,9 +209,9 @@ public:
> ConfigItem *item;
> };
>
> -class ConfigView : public QVBox {
> +class ConfigView : public Q3VBox {
> Q_OBJECT
> - typedef class QVBox Parent;
> + typedef class Q3VBox Parent;
> public:
> ConfigView(QWidget* parent, const char *name = 0);
> ~ConfigView(void);
> @@ -244,9 +240,9 @@ public:
> ConfigView* nextView;
> };
>
> -class ConfigInfoView : public QTextBrowser {
> +class ConfigInfoView : public Q3TextBrowser {
> Q_OBJECT
> - typedef class QTextBrowser Parent;
> + typedef class Q3TextBrowser Parent;
> public:
> ConfigInfoView(QWidget* parent, const char *name = 0);
> bool showDebug(void) const { return _showDebug; }
> @@ -267,11 +263,11 @@ protected:
> QString debug_info(struct symbol *sym);
> static QString print_filter(const QString &str);
> static void expr_print_help(void *data, struct symbol *sym, const char *str);
> - QPopupMenu* createPopupMenu(const QPoint& pos);
> + Q3PopupMenu* createPopupMenu(const QPoint& pos);
> void contentsContextMenuEvent(QContextMenuEvent *e);
>
> struct symbol *sym;
> - struct menu *menu;
> + struct menu *_menu;
> bool _showDebug;
> };
>
> @@ -295,10 +291,10 @@ protected:
> struct symbol **result;
> };
>
> -class ConfigMainWindow : public QMainWindow {
> +class ConfigMainWindow : public Q3MainWindow {
> Q_OBJECT
>
> - static QAction *saveAction;
> + static Q3Action *saveAction;
> static void conf_changed(void);
> public:
> ConfigMainWindow(void);
> @@ -327,8 +323,8 @@ protected:
> ConfigView *configView;
> ConfigList *configList;
> ConfigInfoView *helpText;
> - QToolBar *toolBar;
> - QAction *backAction;
> + Q3ToolBar *toolBar;
> + Q3Action *backAction;
> QSplitter* split1;
> QSplitter* split2;
> };
>
next prev parent reply other threads:[~2010-08-02 12:01 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <1275846668-17863-1-git-send-email-alexander.stein@informatik.tu-chemnitz.de>
2010-06-07 12:45 ` [PATCH] kconfig qconf: port to QT4 Michal Marek
2010-06-07 17:12 ` Alexander Stein
2010-06-07 18:01 ` Gene Heskett
2010-06-07 21:29 ` Michal Marek
2010-07-13 19:26 ` [PATCH v2] " Alexander Stein
2010-07-26 12:44 ` Michal Marek
2010-07-26 12:47 ` Michal Marek
2010-07-30 11:15 ` [PATCHi v3] " Alexander Stein
2010-08-01 14:32 ` Ed Tomlinson
2010-08-01 19:28 ` [PATCH] " Alexander Stein
2010-08-02 12:01 ` Ed Tomlinson [this message]
2010-09-18 14:22 ` Ed Tomlinson
2010-09-20 12:03 ` Michal Marek
2010-09-21 17:31 ` [PATCH 1/2] " Alexander Stein
2010-09-21 17:31 ` [PATCH 2/2] Fix QT4 moc, cflags libs detection on dual QT3/Qt4 systems Alexander Stein
2010-08-02 21:29 ` [PATCHi v3] kconfig qconf: port to QT4 Michal Marek
2010-08-31 15:34 ` [PATCH v4] " Alexander Stein
2010-09-01 14:57 ` Michal Marek
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=201008020801.24130.edt@aei.ca \
--to=edt@aei.ca \
--cc=alexander.stein@informatik.tu-chemnitz.de \
--cc=linux-kbuild@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mmarek@suse.cz \
--cc=zippel@linux-m68k.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox