Skip to content
Snippets Groups Projects
Select Git revision
  • 1a61af02f306e51d3a1e9e28adf15b1c375ba726
  • master default protected
  • beta/202506161038
  • stable/20250613.0
  • nightly/20250613.0
  • beta/202506101658
  • stable/20250610.0
  • nightly/20250610.0
  • beta/202506091027
  • beta/202506061543
  • nightly/20250605.0
  • beta/202506051039
  • beta/202506051002
  • beta/202506041611
  • beta/202506041335
  • beta/202505231812
  • stable/20250523.0
  • nightly/20250523.0
  • nightly/20250515.0
  • nightly/20250510.0
  • nightly/20250509.1
  • nightly/20250509.0
22 results

utils.cpp

Blame
    • Andreas Traczyk's avatar
      1a61af02
      resources: remove unused images and icons · 1a61af02
      Andreas Traczyk authored
      gen-resources.py should be used to generate resources.qrc and
      JamiResources.qml. Steps to add an image resource:
      - add the resource file to the appropriate path under resources/
      - run gen-resources.py
      - use the newly available resource
      
      Note: only icons and images will be represented by Qml properties.
      
      The resource file generation may be made to run during CMake
      configuration in a subsequent commit.
      
      Some unused components were also removed during the refactor.
      
      Gitlab: #477
      Change-Id: I8e7f13d465031666be2bbadd5f29f9afc94d210d
      1a61af02
      History
      resources: remove unused images and icons
      Andreas Traczyk authored
      gen-resources.py should be used to generate resources.qrc and
      JamiResources.qml. Steps to add an image resource:
      - add the resource file to the appropriate path under resources/
      - run gen-resources.py
      - use the newly available resource
      
      Note: only icons and images will be represented by Qml properties.
      
      The resource file generation may be made to run during CMake
      configuration in a subsequent commit.
      
      Some unused components were also removed during the refactor.
      
      Gitlab: #477
      Change-Id: I8e7f13d465031666be2bbadd5f29f9afc94d210d
    Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    deviceitemwidget.cpp 3.50 KiB
    /***************************************************************************
     * Copyright (C) 2019 by Savoir-faire Linux                                *
     * Author: Andreas Traczyk <andreas.traczyk@savoirfairelinux.com>          *
     *                                                                         *
     * 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 3 of the License, or       *
     * (at your option) any later version.                                     *
     *                                                                         *
     * This program is distributed in the hope that it will be useful,         *
     * but WITHOUT ANY WARRANTY; without even the implied warranty of          *
     * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the           *
     * GNU General Public License for more details.                            *
     *                                                                         *
     * You should have received a copy of the GNU General Public License       *
     * along with this program.  If not, see <http://www.gnu.org/licenses/>.   *
     **************************************************************************/
    
    #include "ui_deviceitemwidget.h"
    
    #include "deviceitemwidget.h"
    
    #include "lrcinstance.h"
    
    DeviceItemWidget::DeviceItemWidget(const QString& name,
        const QString& id,
        bool isCurrent,
        QWidget* parent)
        : QWidget(parent),
        ui(new Ui::DeviceItemWidget)
    {
        ui->setupUi(this);
        ui->labelDeviceId->setText(id);
        ui->editDeviceName->setText(name);
    
        ui->btnEditDevice->setIcon(
            isCurrent ?
            QIcon(":/images/icons/round-edit-24px.svg") :
            QIcon(":/images/icons/round-remove_circle-24px.svg"));
    
        ui->btnEditDevice->setToolTip(
            isCurrent ?
            QObject::tr("Edit Device Name") :
            QObject::tr("Unlink Device From Account"));
    
        ui->editDeviceName->setReadOnly(true);
    
        ui->labelThisDevice->setVisible(isCurrent);
    
        connect(ui->editDeviceName,
                SIGNAL(returnPressed()),
                ui->btnEditDevice,
                SIGNAL(clicked()));
    
        connect(ui->btnEditDevice, &QPushButton::clicked, this,
            [this, isCurrent]() {
                if (isCurrent) {
                    toggleEditable();
                } else {
                    emit btnRemoveDeviceClicked();
                }
            });
    
    }
    
    DeviceItemWidget::~DeviceItemWidget()
    {
        disconnect(this);
        delete ui;
    }
    
    void
    DeviceItemWidget::toggleEditable()
    {
        if (!editable_) {
            ui->editDeviceName->setReadOnly(false);
            ui->editDeviceName->setFocus();
            ui->editDeviceName->setStyleSheet("background: white;");
            ui->btnEditDevice->setIcon(QIcon(":/images/icons/round-save_alt-24px.svg"));
            ui->btnEditDevice->setToolTip(QObject::tr("Save new device name"));
        } else {
            ui->editDeviceName->setReadOnly(true);
            ui->editDeviceName->setStyleSheet("background: transparent;");
            ui->btnEditDevice->setIcon(QIcon(":/images/icons/round-edit-24px.svg"));
            ui->btnEditDevice->setToolTip(QObject::tr("Edit Device Name"));
            auto confProps = LRCInstance::accountModel().getAccountConfig(LRCInstance::getCurrAccId());
            confProps.deviceName = ui->editDeviceName->text().toStdString();
            LRCInstance::accountModel().setAccountConfig(LRCInstance::getCurrAccId(), confProps);
        }
        editable_ = !editable_;
    }
    
    QSize
    DeviceItemWidget::sizeHint() const
    {
        return QSize();
    }