Formatting, icon utility function, icon size

This commit is contained in:
Klaus Basan
2017-02-05 00:51:29 +01:00
committed by Mathew Sutcliffe
parent 371ee82f1b
commit 6a96d14baa
5 changed files with 25 additions and 44 deletions

View File

@@ -28,6 +28,7 @@
#include "blackmisc/identifier.h" #include "blackmisc/identifier.h"
#include "blackmisc/network/userlist.h" #include "blackmisc/network/userlist.h"
#include "blackmisc/settingscache.h" #include "blackmisc/settingscache.h"
#include "blackmisc/icons.h"
#include "blacksound/selcalplayer.h" #include "blacksound/selcalplayer.h"
#include <QHash> #include <QHash>
@@ -69,62 +70,29 @@ namespace BlackCore
virtual ~CContextAudio(); virtual ~CContextAudio();
public slots: public slots:
//! \copydoc IContextAudio::getComVoiceRooms() // Interface implementations
//! \publicsection
//! @{
virtual BlackMisc::Audio::CVoiceRoomList getComVoiceRooms() const override; virtual BlackMisc::Audio::CVoiceRoomList getComVoiceRooms() const override;
//! \copydoc IContextAudio::getComVoiceRoomsWithAudioStatus()
virtual BlackMisc::Audio::CVoiceRoomList getComVoiceRoomsWithAudioStatus() const override; virtual BlackMisc::Audio::CVoiceRoomList getComVoiceRoomsWithAudioStatus() const override;
//! \copydoc IContextAudio::getVoiceRoom
virtual BlackMisc::Audio::CVoiceRoom getVoiceRoom(BlackMisc::Aviation::CComSystem::ComUnit comUnitValue, bool withAudioStatus) const override; virtual BlackMisc::Audio::CVoiceRoom getVoiceRoom(BlackMisc::Aviation::CComSystem::ComUnit comUnitValue, bool withAudioStatus) const override;
//! \copydoc IContextAudio::setComVoiceRooms
virtual void setComVoiceRooms(const BlackMisc::Audio::CVoiceRoomList &newRooms) override; virtual void setComVoiceRooms(const BlackMisc::Audio::CVoiceRoomList &newRooms) override;
//! \copydoc IContextAudio::setOwnCallsignForRooms
virtual void setOwnCallsignForRooms(const BlackMisc::Aviation::CCallsign &callsign) override; virtual void setOwnCallsignForRooms(const BlackMisc::Aviation::CCallsign &callsign) override;
//! \copydoc IContextAudio::getRoomCallsigns()
virtual BlackMisc::Aviation::CCallsignSet getRoomCallsigns(BlackMisc::Aviation::CComSystem::ComUnit comUnitValue) const override; virtual BlackMisc::Aviation::CCallsignSet getRoomCallsigns(BlackMisc::Aviation::CComSystem::ComUnit comUnitValue) const override;
//! \copydoc IContextAudio::getRoomUsers()
virtual BlackMisc::Network::CUserList getRoomUsers(BlackMisc::Aviation::CComSystem::ComUnit comUnitValue) const override; virtual BlackMisc::Network::CUserList getRoomUsers(BlackMisc::Aviation::CComSystem::ComUnit comUnitValue) const override;
//! \copydoc IContextAudio::leaveAllVoiceRooms
virtual void leaveAllVoiceRooms() override; virtual void leaveAllVoiceRooms() override;
//! \copydoc IContextAudio::getAudioDevices()
virtual BlackMisc::Audio::CAudioDeviceInfoList getAudioDevices() const override; virtual BlackMisc::Audio::CAudioDeviceInfoList getAudioDevices() const override;
//! \copydoc IContextAudio::getCurrentAudioDevices()
virtual BlackMisc::Audio::CAudioDeviceInfoList getCurrentAudioDevices() const override; virtual BlackMisc::Audio::CAudioDeviceInfoList getCurrentAudioDevices() const override;
//! \copydoc IContextAudio::setCurrentAudioDevice()
virtual void setCurrentAudioDevice(const BlackMisc::Audio::CAudioDeviceInfo &audioDevice) override; virtual void setCurrentAudioDevice(const BlackMisc::Audio::CAudioDeviceInfo &audioDevice) override;
//! \copydoc IContextAudio::setVoiceOutputVolume
virtual void setVoiceOutputVolume(int volume) override; virtual void setVoiceOutputVolume(int volume) override;
//! \copydoc IContextAudio::getVoiceOutputVolume
virtual int getVoiceOutputVolume() const override; virtual int getVoiceOutputVolume() const override;
//! \copydoc IContextAudio::setMute
virtual void setMute(bool muted) override; virtual void setMute(bool muted) override;
//! \copydoc IContextAudio::isMuted()
virtual bool isMuted() const override; virtual bool isMuted() const override;
//! \copydoc IContextAudio::playSelcalTone
virtual void playSelcalTone(const BlackMisc::Aviation::CSelcal &selcal) const override; virtual void playSelcalTone(const BlackMisc::Aviation::CSelcal &selcal) const override;
//! \copydoc IContextAudio::playNotification
virtual void playNotification(BlackMisc::Audio::CNotificationSounds::Notification notification, bool considerSettings) const override; virtual void playNotification(BlackMisc::Audio::CNotificationSounds::Notification notification, bool considerSettings) const override;
//! \copydoc IContextAudio::enableAudioLoopback
virtual void enableAudioLoopback(bool enable = true) override; virtual void enableAudioLoopback(bool enable = true) override;
//! \copydoc IContextAudio::isAudioLoopbackEnabled
virtual bool isAudioLoopbackEnabled() const override; virtual bool isAudioLoopbackEnabled() const override;
//! @}
//! \addtogroup swiftdotcommands //! \addtogroup swiftdotcommands
//! @{ //! @{
@@ -169,7 +137,7 @@ namespace BlackCore
QSharedPointer<IVoiceChannel> getVoiceChannelBy(const BlackMisc::Audio::CVoiceRoom &voiceRoom); QSharedPointer<IVoiceChannel> getVoiceChannelBy(const BlackMisc::Audio::CVoiceRoom &voiceRoom);
const int MinUnmuteVolume = 20; //!< minimum volume when unmuted const int MinUnmuteVolume = 20; //!< minimum volume when unmuted
CActionBind m_actionPtt { "/Voice/Activate push-to-talk", this, &CContextAudio::ps_setVoiceTransmission }; CActionBind m_actionPtt { "/Voice/Activate push-to-talk", BlackMisc::CIcons::radio16(), this, &CContextAudio::ps_setVoiceTransmission };
std::unique_ptr<IVoice> m_voice; //!< underlying voice lib std::unique_ptr<IVoice> m_voice; //!< underlying voice lib
std::unique_ptr<IAudioMixer> m_audioMixer; std::unique_ptr<IAudioMixer> m_audioMixer;
int m_outVolumeBeforeMute = 90; int m_outVolumeBeforeMute = 90;

View File

@@ -14,7 +14,7 @@
<string>ATC stations</string> <string>ATC stations</string>
</property> </property>
<property name="currentIndex"> <property name="currentIndex">
<number>1</number> <number>0</number>
</property> </property>
<widget class="QWidget" name="tb_AtcStationsOnline"> <widget class="QWidget" name="tb_AtcStationsOnline">
<attribute name="title"> <attribute name="title">

View File

@@ -457,26 +457,28 @@ namespace BlackGui
{ {
QWidget *w = mainApplicationWindow(); QWidget *w = mainApplicationWindow();
if (!w) { return; } if (!w) { return; }
QAction *a = menu.addAction(w->style()->standardIcon(QStyle::SP_TitleBarMaxButton), "Fullscreen"); const QSize iconSize = CIcons::empty16().size();
QPixmap icon = w->style()->standardIcon(QStyle::SP_TitleBarMaxButton).pixmap(iconSize);
QAction *a = menu.addAction(icon.scaled(iconSize), "Fullscreen");
bool c = connect(a, &QAction::triggered, this, [a, w]() bool c = connect(a, &QAction::triggered, this, [a, w]()
{ {
w->showFullScreen(); w->showFullScreen();
}); });
Q_ASSERT_X(c, Q_FUNC_INFO, "Connect failed"); Q_ASSERT_X(c, Q_FUNC_INFO, "Connect failed");
a = menu.addAction(w->style()->standardIcon(QStyle::SP_TitleBarMinButton), "Minimize"); icon = w->style()->standardIcon(QStyle::SP_TitleBarMinButton).pixmap(iconSize);
a = menu.addAction(icon.scaled(iconSize), "Minimize");
c = connect(a, &QAction::triggered, this, [a, w]() c = connect(a, &QAction::triggered, this, [a, w]()
{ {
w->showMinimized(); w->showMinimized();
}); });
Q_ASSERT_X(c, Q_FUNC_INFO, "Connect failed"); Q_ASSERT_X(c, Q_FUNC_INFO, "Connect failed");
a = menu.addAction(w->style()->standardIcon(QStyle::SP_TitleBarNormalButton), "Normal"); icon = w->style()->standardIcon(QStyle::SP_TitleBarNormalButton).pixmap(iconSize);
a = menu.addAction(icon.scaled(iconSize), "Normal");
c = connect(a, &QAction::triggered, this, [a, w]() c = connect(a, &QAction::triggered, this, [a, w]()
{ {
w->showNormal(); w->showNormal();
}); });
Q_ASSERT_X(c, Q_FUNC_INFO, "Connect failed"); Q_ASSERT_X(c, Q_FUNC_INFO, "Connect failed");

View File

@@ -58,3 +58,11 @@ bool BlackMisc::pngHexStringToPixmapRef(const QString &hexString, QPixmap &pixma
QByteArray ba(byteArrayFromHexString(hexString)); QByteArray ba(byteArrayFromHexString(hexString));
return pngByteArrayToPixmapRef(ba, pixmap); return pngByteArrayToPixmapRef(ba, pixmap);
} }
QPixmap BlackMisc::iconToPixmap(const QIcon &icon)
{
if (icon.isNull()) { return QPixmap(); }
const QList<QSize> sizes = icon.availableSizes();
if (!sizes.isEmpty()) { return icon.pixmap(sizes.first()); }
return icon.pixmap(16, 16);
}

View File

@@ -17,6 +17,7 @@
#include <QByteArray> #include <QByteArray>
#include <QString> #include <QString>
#include <QPixmap> #include <QPixmap>
#include <QIcon>
//! Free functions in BlackMisc //! Free functions in BlackMisc
namespace BlackMisc namespace BlackMisc
@@ -39,6 +40,8 @@ namespace BlackMisc
//! Hex encoded pixmap string to Pixmap //! Hex encoded pixmap string to Pixmap
BLACKMISC_EXPORT bool pngHexStringToPixmapRef(const QString &hexString, QPixmap &pixmap); BLACKMISC_EXPORT bool pngHexStringToPixmapRef(const QString &hexString, QPixmap &pixmap);
//! Icon to pixmap
BLACKMISC_EXPORT QPixmap iconToPixmap(const QIcon &icon);
} // ns } // ns
#endif // guard #endif // guard