KXNeurApp::KXNeurApp() : KUniqueApplication() { xnkb = KXNKeyboard::self(); trayicon = new KXNeurTray(); setMainWidget( trayicon ); trayicon->show(); xneur_pid = 0; xnconf = NULL; cur_lang = -1; prev_lang = -1; if ( KXNeurSettings::self()->RunXNeur() ) xneur_start(); // TODO: проверить старт else { trayicon->run->setText(i18n("Start xneur daemon")); trayicon->run->setIcon("fork"); trayicon->mode->setEnabled(false); xnconf_reload(); } cur_lang = xnkb->getGroupNo(); refreshLang(); trayicon->setPixmap(langs[cur_lang]->pic); QObject::connect(xnkb, SIGNAL(groupChanged(int)), this, SLOT(groupChange(int))); QObject::connect(xnkb, SIGNAL(layoutChanged()), this, SLOT(refreshLang())); QObject::connect(trayicon, SIGNAL(clicked()), this, SLOT(setNextLang())); QObject::connect(trayicon, SIGNAL(quitSelected()), this, SLOT(slotExit())); }
/** class Tray * Reimplmentation of the system tray class adding drag/drop * capabilities and the quit action. */ Tray::Tray(MainWindow * parent) : KSystemTrayIcon(parent), grayedIcon( 0 ), alternateIcon( 0 ), playOverlay( 0 ), m_downloading( false ) { baseIcon = new QPixmap( KSystemTrayIcon::loadIcon("kget").pixmap(22) ); // 12x12 pixel overlay looks fine, amarok uses 10x10 playOverlay = new QPixmap( SmallIcon( "media-playback-start", 12 ) ); paintIcon(); // add preferences action to the context menu QMenu * cm = contextMenu(); cm->addAction( parent->actionCollection()->action("new_download") ); cm->addAction( parent->actionCollection()->action("import_links") ); cm->addSeparator(); cm->addAction( parent->actionCollection()->action("start_all_download") ); cm->addAction( parent->actionCollection()->action("stop_all_download") ); cm->addSeparator(); cm->addAction( parent->actionCollection()->action("konqueror_integration") ); cm->addAction( parent->actionCollection()->action("show_drop_target") ); cm->addAction( parent->actionCollection()->action("options_configure") ); // add tooltip telling "I'm kget" setToolTip(i18n("KGet - Download Manager")); // connecting the "Exit" menu item to the quit() of our app connect( this, SIGNAL( quitSelected() ), kapp, SLOT(quit())); connect( this, SIGNAL( activated( QSystemTrayIcon::ActivationReason ) ), SLOT( slotActivated( QSystemTrayIcon::ActivationReason ) ) ); }
KXNeurApp::KXNeurApp() : KUniqueApplication() // : KApplication() { KGlobal::dirs()->addResourceDir("appdata", "."); all_langs = new KConfig("langs", true, true, "appdata"); all_langs->setGroup("Languages"); xnkb = KXNKeyboard::self(); trayicon = new KXNeurTray(); setMainWidget( trayicon ); trayicon->show(); xneur_pid = 0; xnconf = NULL; cur_lang = -1; prev_lang = -1; if ( !(KXNeurSettings::self()->RunXNeur() && xneur_start()) ) { // printf("start -- ok\n"); // else { trayicon->run->setText(i18n("Start xneur daemon")); trayicon->run->setIcon("fork"); trayicon->mode->setEnabled(false); xnconf_reload(); } cur_lang = xnkb->getGroupNo(); refreshLang(); trayicon->setPixmap(langs[cur_lang]->pic); QObject::connect(xnkb, SIGNAL(groupChanged(int)), this, SLOT(groupChange(int))); QObject::connect(xnkb, SIGNAL(layoutChanged()), this, SLOT(refreshLang())); QObject::connect(trayicon, SIGNAL(clicked()), this, SLOT(setNextLang())); QObject::connect(trayicon, SIGNAL(quitSelected()), this, SLOT(slotExit())); }
KHDAPSMonitorSysTray::KHDAPSMonitorSysTray(QWidget * parent, const char * name) : KSystemTray(parent, name) { contextMenu()->insertItem(I18N_NOOP("About KHDAPS Monitor"), this, SLOT(about()), CTRL+Key_A); connect(this, SIGNAL(quitSelected()), kapp, SLOT(quit())); update(); timer = new QTimer(this); connect(timer, SIGNAL(timeout()), this, SLOT(update())); timer->start(UPDATE_INTERVAL); }
/** * Main program */ int main( int argc, char *argv[] ) { KApplication app( argc, argv, "kdockprog" ); KDockProg &prog = *new KDockProg( argc, argv ); if( 0 == prog.getNumPrograms() ) { ::fprintf( stderr, "You have to specify at least one -i -e pair.\n" ); prog.usage(); exit(1); } KDockWidget dock(NULL); prog.setDockWidget( dock ); dock.connect( &dock, SIGNAL(quitSelected()), &app, SLOT(quit())); dock.setIcon( prog[0].getIcon() ); dock.connect( &dock, SIGNAL(iconPressed()), &prog, SLOT(startProgram()) ); return app.exec(); }
KMixDockWidget::KMixDockWidget( Mixer *mixer, QWidget *parent, const char *name, bool volumePopup ) : KSystemTray( parent, name ), m_mixer(mixer), _dockAreaPopup(0L), _audioPlayer(0L), _playBeepOnVolumeChange(false), // disabled due to triggering a "Bug" _oldToolTipValue(-1), _oldPixmapType('-'), _volumePopup(volumePopup) { Mixer* preferredMasterMixer = Mixer::masterCard(); if ( preferredMasterMixer != 0 ) { m_mixer = preferredMasterMixer; } MixDevice* mdMaster = Mixer::masterCardDevice(); if ( mdMaster != 0 ) { m_mixer->setMasterDevice(mdMaster->getPK()); // !! using both Mixer::masterCard() and m_mixer->masterDevice() is nonsense !! } createActions(); createMasterVolWidget(); connect(this, SIGNAL(quitSelected()), kapp, SLOT(quitExtended())); }
KWatchGnuPGMainWindow::KWatchGnuPGMainWindow( QWidget* parent, const char* name ) : KMainWindow( parent, name, WType_TopLevel ), mConfig(0) { createActions(); createGUI(); mCentralWidget = new QTextEdit( this, "central log view" ); mCentralWidget->setTextFormat( QTextEdit::LogText ); setCentralWidget( mCentralWidget ); mWatcher = new KProcIO( QTextCodec::codecForMib( 106 /*utf-8*/ ) ); connect( mWatcher, SIGNAL( processExited(KProcess*) ), this, SLOT( slotWatcherExited() ) ); connect( mWatcher, SIGNAL( readReady(KProcIO*) ), this, SLOT( slotReadStdout() ) ); slotReadConfig(); mSysTray = new KWatchGnuPGTray( this ); mSysTray->show(); connect( mSysTray, SIGNAL( quitSelected() ), this, SLOT( slotQuit() ) ); setAutoSaveSettings(); }
int main(int argc, char **argv) { TDELocale::setMainCatalogue( "kdf" ); TDEAboutData about("kwikdisk", I18N_NOOP("KwikDisk"), version, description, TDEAboutData::License_GPL, "(C) 2004 Stanislav Karchebny", 0, 0, "*****@*****.**"); about.addAuthor( "Michael Kropfberger", I18N_NOOP("Original author"), "*****@*****.**" ); about.addAuthor( "Espen Sand", I18N_NOOP("TDE 2 changes"), "" ); about.addAuthor( "Stanislav Karchebny", I18N_NOOP("TDE 3 changes"), "*****@*****.**" ); TDECmdLineArgs::init(argc, argv, &about); TDECmdLineArgs::addCmdLineOptions( options ); TDEApplication app; KwikDisk *mainWin = 0; mainWin = new KwikDisk; TQObject::connect(mainWin, TQT_SIGNAL(quitSelected()), &app, TQT_SLOT(quit())); // mainWin has WDestructiveClose flag by default, so it will delete itself. return app.exec(); }
void KSystemTray::maybeQuit() { QString query = i18n("<qt>Are you sure you want to quit <b>%1</b>?</qt>").arg(kapp->caption()); if(KMessageBox::warningContinueCancel(this, query, i18n("Confirm Quit From System Tray"), KStdGuiItem::quit(), QString("systemtrayquit%1").arg(kapp->caption())) != KMessageBox::Continue) { return; } emit quitSelected(); // KDE4: stop closing the parent widget? it results in complex application code // instead make applications connect to the quitSelected() signal if(parentWidget()) { parentWidget()->close(); } else { qApp->closeAllWindows(); } }
TDEWalletManager::TDEWalletManager(TQWidget *parent, const char *name, WFlags f) : TDEMainWindow(parent, name, f), DCOPObject("TDEWalletManager") { TDEGlobal::dirs()->addResourceType("tdewallet", "share/apps/tdewallet"); _tdewalletdLaunch = false; TQAccel *accel = new TQAccel(this, "tdewalletmanager"); TDEApplication::dcopClient()->setQtBridgeEnabled(false); _shuttingDown = false; TDEConfig cfg("tdewalletrc"); // not sure why this setting isn't in tdewalletmanagerrc... TDEConfigGroup walletConfigGroup(&cfg, "Wallet"); _dcopRef = 0L; if (walletConfigGroup.readBoolEntry("Launch Manager", true)) { _tray = new KSystemTray(this, "tdewalletmanager tray"); _tray->setPixmap(loadSystemTrayIcon("wallet_closed")); TQToolTip::add(_tray, i18n("TDE Wallet: No wallets open.")); connect(_tray, TQT_SIGNAL(quitSelected()), TQT_SLOT(shuttingDown())); TQStringList wl = TDEWallet::Wallet::walletList(); bool isOpen = false; for (TQStringList::Iterator it = wl.begin(); it != wl.end(); ++it) { if (TDEWallet::Wallet::isOpen(*it)) { _tray->setPixmap(loadSystemTrayIcon("wallet_open")); TQToolTip::remove(_tray); TQToolTip::add(_tray, i18n("TDE Wallet: A wallet is open.")); isOpen = true; break; } } if (!isOpen && kapp->isRestored()) { delete _tray; _tray = 0L; TQTimer::singleShot( 0, kapp, TQT_SLOT( quit())); return; } } else { _tray = 0L; } _iconView = new TDEWalletIconView(this, "tdewalletmanager icon view"); connect(_iconView, TQT_SIGNAL(executed(TQIconViewItem*)), TQT_TQOBJECT(this), TQT_SLOT(openWallet(TQIconViewItem*))); connect(_iconView, TQT_SIGNAL(contextMenuRequested(TQIconViewItem*, const TQPoint&)), TQT_TQOBJECT(this), TQT_SLOT(contextMenu(TQIconViewItem*, const TQPoint&))); updateWalletDisplay(); setCentralWidget(_iconView); _iconView->setMinimumSize(320, 200); _dcopRef = new DCOPRef("kded", "tdewalletd"); _dcopRef->dcopClient()->setNotifications(true); connect(_dcopRef->dcopClient(), TQT_SIGNAL(applicationRemoved(const TQCString&)), this, TQT_SLOT(possiblyRescan(const TQCString&))); connect(_dcopRef->dcopClient(), TQT_SIGNAL(applicationRegistered(const TQCString&)), this, TQT_SLOT(possiblyRescan(const TQCString&))); connectDCOPSignal(_dcopRef->app(), _dcopRef->obj(), "allWalletsClosed()", "allWalletsClosed()", false); connectDCOPSignal(_dcopRef->app(), _dcopRef->obj(), "walletClosed(TQString)", "updateWalletDisplay()", false); connectDCOPSignal(_dcopRef->app(), _dcopRef->obj(), "walletOpened(TQString)", "aWalletWasOpened()", false); connectDCOPSignal(_dcopRef->app(), _dcopRef->obj(), "walletDeleted(TQString)", "updateWalletDisplay()", false); connectDCOPSignal(_dcopRef->app(), _dcopRef->obj(), "walletListDirty()", "updateWalletDisplay()", false); // FIXME: slight race - a wallet can open, then we get launched, but the // wallet closes before we are done opening. We will then stay // open. Must check that a wallet is still open here. new TDEAction(i18n("&New Wallet..."), "tdewalletmanager", 0, TQT_TQOBJECT(this), TQT_SLOT(createWallet()), actionCollection(), "wallet_create"); TDEAction *act = new TDEAction(i18n("Configure &Wallet..."), "configure", 0, TQT_TQOBJECT(this), TQT_SLOT(setupWallet()), actionCollection(), "wallet_settings"); if (_tray) { act->plug(_tray->contextMenu()); } act = new TDEAction(i18n("Close &All Wallets"), 0, 0, TQT_TQOBJECT(this), TQT_SLOT(closeAllWallets()), actionCollection(), "close_all_wallets"); if (_tray) { act->plug(_tray->contextMenu()); } KStdAction::quit(TQT_TQOBJECT(this), TQT_SLOT(shuttingDown()), actionCollection()); KStdAction::keyBindings(guiFactory(), TQT_SLOT(configureShortcuts()), actionCollection()); createGUI("tdewalletmanager.rc"); accel->connectItem(accel->insertItem(Key_Return), TQT_TQOBJECT(this), TQT_SLOT(openWallet())); accel->connectItem(accel->insertItem(Key_Delete), TQT_TQOBJECT(this), TQT_SLOT(deleteWallet())); if (_tray) { _tray->show(); } else { show(); } kapp->setName("tdewallet"); // hack to fix docs }
/** * init the systemtray */ void KLinPopup::initSystemTray() { systemTray = new SystemTray(this); connect(systemTray, SIGNAL(quitSelected()), kapp, SLOT(quit())); systemTray->show(); }
void KwikDisk::updateDFDone() { kdDebug() << k_funcinfo << endl; m_readingDF = FALSE; m_dirty = FALSE; contextMenu()->clear(); contextMenu()->insertTitle(KSystemTray::loadIcon("kdf"), i18n("KwikDisk")); int itemNo = 0; for( DiskEntry *disk = m_diskList.first(); disk != 0; disk = m_diskList.next() ) { // FIXME: tool tips are unused atm TQString toolTipText = i18n("%1 (%2) %3 on %4") .arg( disk->mounted() ? i18n("Unmount") : i18n("Mount")) .arg(disk->fsType()).arg(disk->deviceName()).arg(disk->mountPoint()); TQString entryName = disk->mountPoint(); if( disk->mounted() ) { entryName += TQString("\t\t\t[%1]").arg(disk->prettyKBAvail()); } int id = contextMenu()->insertItem("", this, TQT_SLOT(toggleMount(int)) ); contextMenu()->setItemParameter(id, itemNo); itemNo++; TQPixmap *pix = new TQPixmap(KSystemTray::loadIcon(disk->iconName())); if( getuid() !=0 && disk->mountOptions().find("user",0, false) == -1 ) { // // Special root icon, normal user cant mount. // // 2000-01-23 Espen Sand // Careful here: If the mask has not been defined we can // not use TQPixmap::mask() because it returns 0 => segfault // if( pix->mask() != 0 ) { TQBitmap *bm = new TQBitmap(*(pix->mask())); if( bm != 0 ) { TQPainter qp( bm ); qp.setPen(TQPen(white,1)); qp.drawRect(0,0,bm->width(),bm->height()); qp.end(); pix->setMask(*bm); } TQPainter qp( pix ); qp.setPen(TQPen(red,1)); qp.drawRect(0,0,pix->width(),pix->height()); qp.end(); } contextMenu()->disconnectItem(id,disk,TQT_SLOT(toggleMount())); toolTipText = i18n("You must login as root to mount this disk"); } contextMenu()->changeItem(*pix,entryName,id); } contextMenu()->insertSeparator(); contextMenu()->insertItem( KSystemTray::loadIcon("kdf"), i18n("&Start KDiskFree"), this, TQT_SLOT(startKDF()),0); contextMenu()->insertItem( KSystemTray::loadIcon("configure"), i18n("&Configure KwikDisk..."), this, TQT_SLOT(changeSettings()),0); contextMenu()->insertItem( KSystemTray::loadIcon("help"), KStdGuiItem::help().text(), this, TQT_SLOT(invokeHelp()),0); contextMenu()->insertSeparator(); contextMenu()->insertItem( KSystemTray::loadIcon("exit"), KStdGuiItem::quit().text(), this, TQT_SIGNAL(quitSelected()) ); }
/** * init the systemtray */ void KLinPopup::initSystemTray() { m_systemTray = new SystemTray(this, "systemTray"); connect(m_systemTray, SIGNAL(quitSelected()), this, SLOT(slotQuit())); m_systemTray->show(); }