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.
61 lines
2.3 KiB
61 lines
2.3 KiB
/***************************************************************************
|
|
* Copyright (C) 2006 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 CONTAINER_H
|
|
#define CONTAINER_H
|
|
|
|
#include <tqframe.h>
|
|
#include <tqwidgetstack.h>
|
|
#include <tqtabwidget.h>
|
|
#include <tqlayout.h>
|
|
|
|
class PopupButton;
|
|
|
|
//----------------------------------------------------------------------------
|
|
class Container : public TQFrame
|
|
{
|
|
Q_OBJECT
|
|
|
|
public:
|
|
enum Type { Flat, Sunken };
|
|
Container(TQWidget *parent = 0, Type type = Flat);
|
|
Container(TQWidgetStack *stack, uint index, Type type = Flat);
|
|
Container(TQTabWidget *tabw, const TQString &title, Type type = Flat);
|
|
void addWidget(TQWidget *widget, uint startRow, uint endRow, uint startCol, uint endCol, int alignment = 0);
|
|
void addLayout(TQLayout *layout, uint startRow, uint endRow, uint startCol, uint endCol, int alignment = 0);
|
|
uint numRows() const { return _gridLayout->numRows(); }
|
|
uint numCols() const { return _gridLayout->numCols(); }
|
|
void setFrame(Type type);
|
|
void setMargin(uint margin) { _topLayout->setMargin(margin); }
|
|
void setRowSpacing(uint row, uint spacing) { _gridLayout->setRowSpacing(row, spacing); }
|
|
void setColSpacing(uint col, uint spacing) { _gridLayout->setColSpacing(col, spacing); }
|
|
void setRowStretch(uint row, uint stretch) { _gridLayout->setRowStretch(row, stretch); }
|
|
void setColStretch(uint col, uint stretch) { _gridLayout->setColStretch(col, stretch); }
|
|
|
|
private:
|
|
Type _type;
|
|
TQGridLayout *_topLayout, *_gridLayout;
|
|
|
|
void initLayout();
|
|
};
|
|
|
|
//----------------------------------------------------------------------------
|
|
class ButtonContainer : public Container
|
|
{
|
|
Q_OBJECT
|
|
|
|
public:
|
|
ButtonContainer(const TQString &title, TQWidget *parent);
|
|
PopupButton &button() { return *_button; }
|
|
|
|
private:
|
|
PopupButton *_button;
|
|
};
|
|
|
|
#endif
|