示例#1
0
DJSymbolTable::DJSymbolTable( int type, QWidget* parent, const QSize symbolSize )
	:QTableWidget(parent),m_type(type)
{	
	djDebug() << "DJSymbolTable constructor";
	setSelectionMode( QAbstractItemView::NoSelection );
	setHorizontalScrollBarPolicy( Qt::ScrollBarAlwaysOff );
	setVerticalScrollBarPolicy( Qt::ScrollBarAlwaysOn );
	setGridStyle( Qt::NoPen );
	setShowGrid( false );
	setSymbolSize( symbolSize );
	
	switch ( m_type ) {
	case PLAYER_SYMBOL_WIDGET: {
		setDirPath( ":/BaseRes/image/face" );
		createSymbolItems();
		break;
	}
	case MEMBER_SYMBOL_WIDGET: {
		setDirPath( "images/member" );
		createSymbolItems();
		break;
	}
	default:
		djDebug() << "symbol type error";	
		break;
	}
	
	connect( this, SIGNAL(itemClicked(QTableWidgetItem *)),SLOT(handleItemClicked(QTableWidgetItem *)));
	connect( this, SIGNAL(itemDoubleClicked(QTableWidgetItem *)),SLOT(handleItemDoubleClicked(QTableWidgetItem *)));
	
	djDebug() << "DJSymbolTable constructor end";
}
示例#2
0
Window::Window(QWidget *parent)
    : QWidget(parent)
{
    FileListModel *model = new FileListModel(this);

    model->init();

    QLabel *label = new QLabel(tr("&Directory:"));
    QLineEdit *lineEdit = new QLineEdit;
    label->setBuddy(lineEdit);

    QListView *view = new QListView;
    view->setModel(model);
    view->setUniformItemSizes(true);

    connect(lineEdit, SIGNAL(textChanged(QString)), model, SLOT(setDirPath(QString)));
    connect(lineEdit, SIGNAL(editingFinished()), model, SLOT(list()));


    /*
	here: connect the signal of special io thread entry added to the slot entryadded of filelistmodel
    */

    QGridLayout *layout = new QGridLayout;
    layout->addWidget(label, 0, 0);
    layout->addWidget(lineEdit, 0, 1);
    layout->addWidget(view, 1, 0, 1, 2);

    setLayout(layout);
    setWindowTitle(tr("Fetch More Example"));

}
Window::Window(QWidget *parent)
    : QWidget(parent)
{
    FileListModel *model = new FileListModel(this);
    model->setDirPath(QLibraryInfo::location(QLibraryInfo::PrefixPath));

    QLabel *label = new QLabel(tr("&Directory:"));
    QLineEdit *lineEdit = new QLineEdit;
    label->setBuddy(lineEdit);

    QListView *view = new QListView;
    view->setModel(model);

    logViewer = new QTextBrowser;
    logViewer->setSizePolicy(QSizePolicy(QSizePolicy::Preferred, QSizePolicy::Preferred));

    connect(lineEdit, SIGNAL(textChanged(QString)),
            model, SLOT(setDirPath(QString)));
    connect(lineEdit, SIGNAL(textChanged(QString)),
            logViewer, SLOT(clear()));
    connect(model, SIGNAL(numberPopulated(int)),
            this, SLOT(updateLog(int)));
    
    QGridLayout *layout = new QGridLayout;
    layout->addWidget(label, 0, 0);
    layout->addWidget(lineEdit, 0, 1);
    layout->addWidget(view, 1, 0, 1, 2);
    layout->addWidget(logViewer, 2, 0, 1, 2);

    setLayout(layout);
    setWindowTitle(tr("Fetch More Example"));
}
int FileListModel::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
{
    _id = QAbstractListModel::qt_metacall(_c, _id, _a);
    if (_id < 0)
        return _id;
    if (_c == QMetaObject::InvokeMetaMethod) {
        switch (_id) {
        case 0: numberPopulated((*reinterpret_cast< int(*)>(_a[1]))); break;
        case 1: setDirPath((*reinterpret_cast< const QString(*)>(_a[1]))); break;
        default: ;
        }
        _id -= 2;
    }
    return _id;
}