You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
171 lines
5.0 KiB
171 lines
5.0 KiB
/***************************************************************************
|
|
* Copyright (C) 2006-2007 Nicolas Hadacek <hadacek@kde.org> *
|
|
* *
|
|
* This program is free software; you can redistribute it and/or modify *
|
|
* it under the terms of the GNU General Public License as published by *
|
|
* the Free Software Foundation; either version 2 of the License, or *
|
|
* (at your option) any later version. *
|
|
***************************************************************************/
|
|
#ifndef MISC_GUI_H
|
|
#define MISC_GUI_H
|
|
|
|
#include <tqlayout.h>
|
|
#include <tqsplitter.h>
|
|
#include <tqvaluevector.h>
|
|
#include <tqvalidator.h>
|
|
#include <tqcombobox.h>
|
|
#include <tqwidgetstack.h>
|
|
|
|
#include <klocale.h>
|
|
#include <kpushbutton.h>
|
|
#include <ktabwidget.h>
|
|
#include <ktabbar.h>
|
|
#include <kstdguiitem.h>
|
|
#include <klineedit.h>
|
|
class KAction;
|
|
|
|
#include "common/global/generic_config.h"
|
|
#include "common/global/log.h"
|
|
#include "common/common/number.h"
|
|
|
|
//-----------------------------------------------------------------------------
|
|
class PBusyCursor
|
|
{
|
|
public:
|
|
PBusyCursor() { start(); }
|
|
~PBusyCursor() { stop(); }
|
|
static void start();
|
|
static void stop();
|
|
static void pause();
|
|
static void restore();
|
|
|
|
private:
|
|
static bool _overridePaused;
|
|
};
|
|
|
|
//-----------------------------------------------------------------------------
|
|
namespace MessageBox
|
|
{
|
|
extern void information(const TQString &text, Log::ShowMode show, const TQString &dontShowAgainName = TQString());
|
|
extern void detailedSorry(const TQString &text, const TQString &details, Log::ShowMode show);
|
|
inline void sorry(const TQString &text, Log::ShowMode show) { detailedSorry(text, TQString(), show); }
|
|
extern bool askContinue(const TQString &text, const KGuiItem &continueButton = KStdGuiItem::cont(),
|
|
const TQString &caption = i18n("Warning"));
|
|
extern bool questionYesNo(const TQString &text, const KGuiItem &yesButton, const KGuiItem &noButton,
|
|
const TQString &caption = i18n("Warning"));
|
|
enum Result { Yes, No, Cancel };
|
|
extern Result questionYesNoCancel(const TQString &text, const KGuiItem &yesButton, const KGuiItem &noButton,
|
|
const TQString &caption = i18n("Warning"));
|
|
extern void text(const TQString &text, Log::ShowMode show);
|
|
}
|
|
|
|
//----------------------------------------------------------------------------
|
|
class PopupButton : public KPushButton
|
|
{
|
|
Q_OBJECT
|
|
TQ_OBJECT
|
|
public:
|
|
PopupButton(TQWidget *parent = 0, const char *name = 0);
|
|
PopupButton(const TQString &text, TQWidget *parent = 0, const char *name = 0);
|
|
void appendAction(KAction *action);
|
|
void appendAction(const TQString &label, const TQString &icon = TQString(),
|
|
TQObject *receiver = 0, const char *slot = 0);
|
|
int appendItem(const TQString &label, uint id) { return appendItem(label, TQPixmap(), id); }
|
|
int appendItem(const TQString &label, const TQString &icon, int id = -1);
|
|
int appendItem(const TQString &label, const TQPixmap &icon, int id = -1);
|
|
void appendSeparator() { _separator = true; }
|
|
|
|
signals:
|
|
void activated(int id);
|
|
|
|
private:
|
|
bool _separator;
|
|
|
|
void init();
|
|
};
|
|
|
|
//-----------------------------------------------------------------------------
|
|
class Splitter : public TQSplitter
|
|
{
|
|
Q_OBJECT
|
|
TQ_OBJECT
|
|
public:
|
|
Splitter(const TQValueList<int> &defaultSizes, Qt::Orientation orientation,
|
|
TQWidget *parent, const char *name);
|
|
virtual ~Splitter();
|
|
|
|
private slots:
|
|
void updateSizes();
|
|
|
|
private:
|
|
TQValueList<int> _defaultSizes;
|
|
};
|
|
|
|
//-----------------------------------------------------------------------------
|
|
class GuiConfig : public GenericConfig
|
|
{
|
|
public:
|
|
GuiConfig() : GenericConfig("gui") {}
|
|
};
|
|
|
|
//-----------------------------------------------------------------------------
|
|
class SeparatorWidget : public TQFrame
|
|
{
|
|
Q_OBJECT
|
|
TQ_OBJECT
|
|
public:
|
|
SeparatorWidget(TQWidget *parent) : TQFrame(parent, "separator") {
|
|
setFrameStyle(TQFrame::Panel | TQFrame::Sunken);
|
|
setMargin(2);
|
|
setFixedHeight(2*2);
|
|
}
|
|
};
|
|
|
|
//-----------------------------------------------------------------------------
|
|
class TabBar : public KTabBar
|
|
{
|
|
Q_OBJECT
|
|
TQ_OBJECT
|
|
public:
|
|
TabBar(TQWidget *parent = 0, const char *name = 0);
|
|
|
|
protected:
|
|
virtual void wheelEvent(TQWheelEvent *e);
|
|
|
|
private:
|
|
bool _ignoreWheelEvent;
|
|
|
|
friend class TabWidget;
|
|
};
|
|
|
|
class TabWidget : public KTabWidget
|
|
{
|
|
Q_OBJECT
|
|
TQ_OBJECT
|
|
public:
|
|
TabWidget(TQWidget *parent = 0, const char *name = 0);
|
|
void setIgnoreWheelEvent(bool ignore);
|
|
|
|
protected:
|
|
virtual void wheelEvent(TQWheelEvent *e);
|
|
void setTabBar(TabBar *tabbar);
|
|
};
|
|
|
|
//-----------------------------------------------------------------------------
|
|
class ComboBox : public TQComboBox
|
|
{
|
|
Q_OBJECT
|
|
TQ_OBJECT
|
|
public:
|
|
ComboBox(TQWidget *parent = 0, const char *name = 0);
|
|
void setIgnoreWheelEvent(bool ignore) { _ignoreWheelEvent = ignore; }
|
|
|
|
protected:
|
|
virtual void wheelEvent(TQWheelEvent *e);
|
|
|
|
private:
|
|
bool _ignoreWheelEvent;
|
|
};
|
|
|
|
#endif
|