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/network/userlist.h"
#include "blackmisc/settingscache.h"
#include "blackmisc/icons.h"
#include "blacksound/selcalplayer.h"
#include <QHash>
@@ -69,62 +70,29 @@ namespace BlackCore
virtual ~CContextAudio();
public slots:
//! \copydoc IContextAudio::getComVoiceRooms()
// Interface implementations
//! \publicsection
//! @{
virtual BlackMisc::Audio::CVoiceRoomList getComVoiceRooms() const override;
//! \copydoc IContextAudio::getComVoiceRoomsWithAudioStatus()
virtual BlackMisc::Audio::CVoiceRoomList getComVoiceRoomsWithAudioStatus() const override;
//! \copydoc IContextAudio::getVoiceRoom
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;
//! \copydoc IContextAudio::setOwnCallsignForRooms
virtual void setOwnCallsignForRooms(const BlackMisc::Aviation::CCallsign &callsign) override;
//! \copydoc IContextAudio::getRoomCallsigns()
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;
//! \copydoc IContextAudio::leaveAllVoiceRooms
virtual void leaveAllVoiceRooms() override;
//! \copydoc IContextAudio::getAudioDevices()
virtual BlackMisc::Audio::CAudioDeviceInfoList getAudioDevices() const override;
//! \copydoc IContextAudio::getCurrentAudioDevices()
virtual BlackMisc::Audio::CAudioDeviceInfoList getCurrentAudioDevices() const override;
//! \copydoc IContextAudio::setCurrentAudioDevice()
virtual void setCurrentAudioDevice(const BlackMisc::Audio::CAudioDeviceInfo &audioDevice) override;
//! \copydoc IContextAudio::setVoiceOutputVolume
virtual void setVoiceOutputVolume(int volume) override;
//! \copydoc IContextAudio::getVoiceOutputVolume
virtual int getVoiceOutputVolume() const override;
//! \copydoc IContextAudio::setMute
virtual void setMute(bool muted) override;
//! \copydoc IContextAudio::isMuted()
virtual bool isMuted() const override;
//! \copydoc IContextAudio::playSelcalTone
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;
//! \copydoc IContextAudio::enableAudioLoopback
virtual void enableAudioLoopback(bool enable = true) override;
//! \copydoc IContextAudio::isAudioLoopbackEnabled
virtual bool isAudioLoopbackEnabled() const override;
//! @}
//! \addtogroup swiftdotcommands
//! @{
@@ -169,7 +137,7 @@ namespace BlackCore
QSharedPointer<IVoiceChannel> getVoiceChannelBy(const BlackMisc::Audio::CVoiceRoom &voiceRoom);
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<IAudioMixer> m_audioMixer;
int m_outVolumeBeforeMute = 90;

View File

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

View File

@@ -457,26 +457,28 @@ namespace BlackGui
{
QWidget *w = mainApplicationWindow();
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]()
{
w->showFullScreen();
});
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]()
{
w->showMinimized();
});
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]()
{
w->showNormal();
});
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));
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 <QString>
#include <QPixmap>
#include <QIcon>
//! Free functions in BlackMisc
namespace BlackMisc
@@ -39,6 +40,8 @@ namespace BlackMisc
//! Hex encoded pixmap string to Pixmap
BLACKMISC_EXPORT bool pngHexStringToPixmapRef(const QString &hexString, QPixmap &pixmap);
//! Icon to pixmap
BLACKMISC_EXPORT QPixmap iconToPixmap(const QIcon &icon);
} // ns
#endif // guard