UserWidget::UserWidget(QWidget* parent) : QTabWidget(parent), ui(new Ui::UserWidget){ ui->setupUi(this); updatingfavs = false; if(parent!=0){ parent->setMouseTracking(true); } this->setMouseTracking(true); sysapps = LSession::handle()->applicationMenu()->currentAppHash(); //get the raw info //Connect the signals/slots connect(ui->tool_desktopsettings, SIGNAL(clicked()), this, SLOT(openDeskSettings()) ); connect(ui->tool_config_screensaver, SIGNAL(clicked()), this, SLOT(openScreenSaverConfig()) ); connect(ui->tool_config_screensettings, SIGNAL(clicked()), this, SLOT(openScreenConfig()) ); connect(ui->tool_fav_apps, SIGNAL(clicked()), this, SLOT(FavChanged()) ); connect(ui->tool_fav_files, SIGNAL(clicked()), this, SLOT(FavChanged()) ); connect(ui->tool_fav_dirs, SIGNAL(clicked()), this, SLOT(FavChanged()) ); connect(ui->combo_app_cats, SIGNAL(currentIndexChanged(int)), this, SLOT(updateApps()) ); connect(ui->tool_home_gohome, SIGNAL(clicked()), this, SLOT(slotGoHome()) ); connect(ui->tool_home_browse, SIGNAL(clicked()), this, SLOT(slotOpenDir()) ); connect(ui->tool_home_search, SIGNAL(clicked()), this, SLOT(slotOpenSearch()) ); connect(ui->tool_config_about, SIGNAL(clicked()), this, SLOT(openLuminaInfo()) ); //Setup the special buttons connect(ui->tool_app_store, SIGNAL(clicked()), this, SLOT(openStore()) ); connect(ui->tool_controlpanel, SIGNAL(clicked()), this, SLOT(openControlPanel()) ); connect(ui->tool_qtconfig, SIGNAL(clicked()), this, SLOT(openQtConfig()) ); lastUpdate = QDateTime(); //make sure it refreshes connect(LSession::handle()->applicationMenu(), SIGNAL(AppMenuUpdated()), this, SLOT(UpdateMenu()) ); connect(QApplication::instance(), SIGNAL(DesktopFilesChanged()), this, SLOT(updateFavItems()) ); QTimer::singleShot(10,this, SLOT(UpdateAll())); //make sure to load this once after initialization }
UserWidget::UserWidget(QWidget* parent) : QWidget(parent), ui(new Ui::UserWidget){ ui->setupUi(this); this->setContentsMargins(0,0,0,0); sysapps = LSession::applicationMenu()->currentAppHash(); //get the raw info //Setup the Icons // - favorites tab ui->tabWidget->setTabIcon(0, LXDG::findIcon("favorites","") ); ui->tabWidget->setTabText(0,""); // - apps tab ui->tabWidget->setTabIcon(1, LXDG::findIcon("system-run","") ); ui->tabWidget->setTabText(1,""); // - home tab ui->tabWidget->setTabIcon(2, LXDG::findIcon("user-home","") ); ui->tabWidget->setTabText(2,""); // - config tab ui->tabWidget->setTabIcon(3, LXDG::findIcon("preferences-system","") ); ui->tabWidget->setTabText(3,""); ui->tool_fav_apps->setIcon( LXDG::findIcon("system-run","") ); ui->tool_fav_dirs->setIcon( LXDG::findIcon("folder","") ); ui->tool_fav_files->setIcon( LXDG::findIcon("document-multiple","") ); ui->tool_desktopsettings->setIcon( LXDG::findIcon("preferences-desktop","") ); ui->tool_config_screensaver->setIcon( LXDG::findIcon("preferences-desktop-screensaver","") ); //Connect the signals/slots connect(ui->tool_desktopsettings, SIGNAL(clicked()), this, SLOT(openDeskSettings()) ); connect(ui->tool_config_screensaver, SIGNAL(clicked()), this, SLOT(openScreenSaverConfig()) ); connect(ui->tool_fav_apps, SIGNAL(clicked()), this, SLOT(FavChanged()) ); connect(ui->tool_fav_files, SIGNAL(clicked()), this, SLOT(FavChanged()) ); connect(ui->tool_fav_dirs, SIGNAL(clicked()), this, SLOT(FavChanged()) ); connect(ui->combo_app_cats, SIGNAL(currentIndexChanged(int)), this, SLOT(updateApps()) ); //Setup the special buttons QString APPSTORE = LOS::AppStoreShortcut(); if(QFile::exists(APPSTORE) && !APPSTORE.isEmpty()){ //Now load the info bool ok = false; XDGDesktop store = LXDG::loadDesktopFile(APPSTORE, ok); if(ok){ ui->tool_app_store->setIcon( LXDG::findIcon(store.icon, "") ); ui->tool_app_store->setText( store.name ); connect(ui->tool_app_store, SIGNAL(clicked()), this, SLOT(openStore()) ); } ui->tool_app_store->setVisible(ok); //availability }else{ ui->tool_app_store->setVisible(false); //not available } QString CONTROLPANEL = LOS::ControlPanelShortcut(); if(QFile::exists(CONTROLPANEL) && !CONTROLPANEL.isEmpty()){ //Now load the info bool ok = false; XDGDesktop cpan = LXDG::loadDesktopFile(CONTROLPANEL, ok); if(ok){ ui->tool_controlpanel->setIcon( LXDG::findIcon(cpan.icon, "") ); connect(ui->tool_controlpanel, SIGNAL(clicked()), this, SLOT(openControlPanel()) ); } ui->tool_controlpanel->setVisible(ok); //availability }else{ ui->tool_controlpanel->setVisible(false); //not available } QString QTCONFIG = LOS::QtConfigShortcut(); if(QFile::exists(QTCONFIG) && !QTCONFIG.isEmpty()){ ui->tool_qtconfig->setVisible(true); ui->tool_qtconfig->setIcon( LXDG::findIcon("preferences-desktop-theme","") ); connect(ui->tool_qtconfig, SIGNAL(clicked()), this, SLOT(openQtConfig()) ); }else{ ui->tool_qtconfig->setVisible(false); } lastUpdate = QDateTime::currentDateTime().addSecs(-30); //make sure it refreshes QTimer::singleShot(10,this, SLOT(UpdateMenu())); //make sure to load this once after initialization }