예제 #1
0
파일: toolbar.cpp 프로젝트: c3c/quazaa
ToolBar::ToolBar(QWidget* parent) : QToolBar(parent)
{
	setIconSize(QSize(12, 12));
	setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Fixed);

	d.helpAction = addAction("", this, SLOT(showHelp()));
	d.helpAction->setToolTip(tr("Help"));

	d.settingsAction = addAction("", this, SIGNAL(settingsTriggered()));
	d.settingsAction->setToolTip(tr("Settings"));

	QWidget* spacer = new QWidget(this);
	spacer->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
	addWidget(spacer);

	d.connectAction = addAction("", this, SIGNAL(connectTriggered()));
	d.connectAction->setToolTip(tr("Connect"));

	d.newViewAction = addAction("", this, SIGNAL(joinTriggered()));
	d.newViewAction->setToolTip(tr("Add Channel"));

	QLineEdit lineEdit;
	lineEdit.setStyleSheet("QLineEdit { border: 1px solid transparent; }");
	setFixedHeight(lineEdit.sizeHint().height());

	connect(&quazaaSettings, SIGNAL(chatSettingsChanged()), this, SLOT(applySettings()));
	applySettings();
}
예제 #2
0
WidgetIrcMain::WidgetIrcMain(QWidget* parent) : QWidget(parent),
    treeWidget(0), dockTile(0)
{
	tabWidget = new MultiSessionTabWidget(this);
	qRegisterMetaTypeStreamOperators<ConnectionInfo>("ConnectionInfo");
	qRegisterMetaTypeStreamOperators<ConnectionInfos>("ConnectionInfos");

    connect(tabWidget, SIGNAL(newTabRequested()), this, SLOT(connectTo()), Qt::QueuedConnection);
    connect(tabWidget, SIGNAL(splitterChanged(QByteArray)), this, SLOT(splitterChanged(QByteArray)));

	WidgetIrcHomePage* homePage = new WidgetIrcHomePage(tabWidget);
    connect(homePage, SIGNAL(connectRequested()), this, SLOT(initialize()));
	tabWidget->insertTab(0, homePage, tr("Home"));

    splitterIrcMain = new QSplitter(this);
    splitterIrcMain->setHandleWidth(1);
    splitterIrcMain->addWidget(tabWidget);

    QVBoxLayout *centralLayout = new QVBoxLayout(this);
    setLayout(centralLayout);
    centralLayout->addWidget(splitterIrcMain);

	if (QtDockTile::isAvailable())
		dockTile = new QtDockTile(this);

	QShortcut* shortcut = new QShortcut(QKeySequence(tr("Ctrl+Q")), this);
	connect(shortcut, SIGNAL(activated()), this, SLOT(close()));

#ifdef Q_WS_MAC
	QMenu* menu = new QMenu(this);
	menuBar()->addMenu(menu);

	QAction* action = new QAction(tr("Connect"), this);
	connect(action, SIGNAL(triggered()), this, SLOT(connectTo()));
	menu->addAction(action);

	action = new QAction(tr("Settings"), this);
	action->setMenuRole(QAction::PreferencesRole);
	connect(action, SIGNAL(triggered()), qApp, SLOT(showSettings()));
	menu->addAction(action);

	action = new QAction(tr("About %1").arg(Application::applicationName()), this);
	action->setMenuRole(QAction::AboutRole);
	connect(action, SIGNAL(triggered()), qApp, SLOT(aboutApplication()));
	menu->addAction(action);

	action = new QAction(tr("About Qt"), this);
	action->setMenuRole(QAction::AboutQtRole);
	connect(action, SIGNAL(triggered()), qApp, SLOT(aboutQt()));
	menu->addAction(action);
#endif // Q_WS_MAC

	quazaaSettings.loadChat();

	applySettings();
	connect(&quazaaSettings, SIGNAL(chatSettingsChanged()), this, SLOT(applySettings()));

	QFile file(":Resource/stylesheet.css");
	if (file.open(QFile::ReadOnly | QIODevice::Text))
		setStyleSheet(QString::fromUtf8(file.readAll()));

	if(quazaaSettings.Chat.ConnectOnStartup)
        QTimer::singleShot(600, this, SLOT(initialize()));
}