Commit 1019f1a5 authored by Boris Barbulovski's avatar Boris Barbulovski Committed by Michal Marek
Browse files

Port xconfig to Qt5 - Introduce Qt4/5 version of ConfigList and ConfigItem

parent 92119937
Loading
Loading
Loading
Loading
+21 −3
Original line number Diff line number Diff line
@@ -87,13 +87,27 @@ bool ConfigSettings::writeSizes(const QString& key, const QList<int>& value)
	return true;
}

/*
 * construct a menu entry
 */
void ConfigItem::init(void)
{
}

/*
 * destruct a menu entry
 */
ConfigItem::~ConfigItem(void)
{
}

ConfigLineEdit::ConfigLineEdit(ConfigView* parent)
	: Parent(parent)
{
	connect(this, SIGNAL(editingFinished()), SLOT(hide()));
}

void ConfigLineEdit::show(QTreeWidgetItem *i)
void ConfigLineEdit::show(ConfigItem* i)
{
	item = i;
	Parent::show();
@@ -118,6 +132,10 @@ void ConfigLineEdit::keyPressEvent(QKeyEvent* e)
	hide();
}

ConfigList::ConfigList(ConfigView* p, const char *name)
	: Parent(p)
{
}
ConfigView*ConfigView::viewList;
QAction *ConfigView::showNormalAction;
QAction *ConfigView::showAllAction;
@@ -129,7 +147,7 @@ ConfigView::ConfigView(QWidget* parent, const char *name)
	QVBoxLayout *verticalLayout = new QVBoxLayout(this);
	verticalLayout->setContentsMargins(0, 0, 0, 0);

	list = new QTreeWidget(this);
	list = new ConfigList(this);
	verticalLayout->addWidget(list);
	lineEdit = new ConfigLineEdit(this);
	lineEdit->hide();
@@ -167,7 +185,7 @@ void ConfigView::setShowData(bool b)
{
}

void ConfigView::updateList(QTreeWidgetItem* item)
void ConfigView::updateList(ConfigItem* item)
{
}

+42 −6
Original line number Diff line number Diff line
@@ -17,6 +17,8 @@
#include "expr.h"

class ConfigView;
class ConfigList;
class ConfigItem;
class ConfigLineEdit;
class ConfigMainWindow;

@@ -37,6 +39,40 @@ enum optionMode {
	normalOpt = 0, allOpt, promptOpt
};

class ConfigList : public QTreeWidget {
	Q_OBJECT
	typedef class QTreeWidget Parent;
public:
	ConfigList(ConfigView* p, const char *name = 0);
};

class ConfigItem : public QTreeWidgetItem {
	typedef class QTreeWidgetItem Parent;
public:
	ConfigItem(QTreeWidgetItem *parent, ConfigItem *after, struct menu *m, bool v)
	: Parent(parent, after), menu(m), visible(v), goParent(false)
	{
		init();
	}
	ConfigItem(ConfigItem *parent, ConfigItem *after, struct menu *m, bool v)
	: Parent(parent, after), menu(m), visible(v), goParent(false)
	{
		init();
	}
	ConfigItem(QTreeWidgetItem *parent, ConfigItem *after, bool v)
	: Parent(parent, after), menu(0), visible(v), goParent(true)
	{
		init();
	}
	~ConfigItem(void);
	void init(void);

	ConfigItem* nextItem;
	struct menu *menu;
	bool visible;
	bool goParent;
};

class ConfigLineEdit : public QLineEdit {
	Q_OBJECT
	typedef class QLineEdit Parent;
@@ -46,11 +82,11 @@ public:
	{
		return (ConfigView*)Parent::parent();
	}
	void show(QTreeWidgetItem *i);
	void show(ConfigItem *i);
	void keyPressEvent(QKeyEvent *e);

public:
	QTreeWidgetItem *item;
	ConfigItem *item;
};

class ConfigView : public QWidget {
@@ -59,7 +95,7 @@ class ConfigView : public QWidget {
public:
	ConfigView(QWidget* parent, const char *name = 0);
	~ConfigView(void);
	static void updateList(QTreeWidgetItem* item);
	static void updateList(ConfigItem* item);
	static void updateListAll(void);

	bool showName(void) const { return false; } // TODO: Implement me.
@@ -75,7 +111,7 @@ signals:
	void showRangeChanged(bool);
	void showDataChanged(bool);
public:
	QTreeWidget* list;
	ConfigList* list;
	ConfigLineEdit* lineEdit;

	static ConfigView* viewList;
@@ -164,9 +200,9 @@ protected:

	ConfigSearchWindow *searchWindow;
	ConfigView *menuView;
	QTreeWidget *menuList;
	ConfigList *menuList;
	ConfigView *configView;
	QTreeWidget *configList;
	ConfigList *configList;
	ConfigInfoView *helpText;
	QToolBar *toolBar;
	QAction *backAction;