Browse Source

Correct voice chat icon resizing.

- Make icon drawing aspect-ratio aware.
- Updates icon size when enabling in case aspect ratio has changed since it was created.
Joseph Davies 12 years ago
parent
commit
060c710ab5
  1. 13
      Sources/Plasma/PubUtilLib/plAudio/plVoiceChat.cpp

13
Sources/Plasma/PubUtilLib/plAudio/plVoiceChat.cpp

@ -56,7 +56,6 @@ You can contact Cyan Worlds, Inc. by email legal@cyan.com
#include "plPipeline/plPlates.h" #include "plPipeline/plPlates.h"
#include "plAvatar/plAvatarMgr.h" #include "plAvatar/plAvatarMgr.h"
#include "plAvatar/plArmatureMod.h" #include "plAvatar/plArmatureMod.h"
#include "hsQuat.h"
#include "plAudioCore/plAudioCore.h" #include "plAudioCore/plAudioCore.h"
// DEBUG for printing to the console // DEBUG for printing to the console
@ -84,13 +83,13 @@ plVoiceRecorder::plVoiceRecorder()
plPlateManager::Instance().CreatePlate( &fDisabledIcon ); plPlateManager::Instance().CreatePlate( &fDisabledIcon );
fDisabledIcon->CreateFromResource( MICROPHONE ); fDisabledIcon->CreateFromResource( MICROPHONE );
fDisabledIcon->SetPosition(-0.90, -0.90); fDisabledIcon->SetPosition(-0.90, -0.90);
fDisabledIcon->SetSize(0.0675, 0.09); fDisabledIcon->SetSize(0.064, 0.064, true);
fDisabledIcon->SetVisible(false); fDisabledIcon->SetVisible(false);
plPlateManager::Instance().CreatePlate( &fTalkIcon ); plPlateManager::Instance().CreatePlate( &fTalkIcon );
fTalkIcon->CreateFromResource( TALKING ); fTalkIcon->CreateFromResource( TALKING );
fTalkIcon->SetPosition(-0.9,-0.9); fTalkIcon->SetPosition(-0.9,-0.9);
fTalkIcon->SetSize(0.0675, 0.09); fTalkIcon->SetSize(0.064, 0.064, true);
fTalkIcon->SetVisible(false); fTalkIcon->SetVisible(false);
} }
@ -208,14 +207,17 @@ void plVoiceRecorder::DrawDisabledIcon(bool b)
{ {
fDisabledIcon->CreateFromResource( MICROPHONE ); fDisabledIcon->CreateFromResource( MICROPHONE );
fDisabledIcon->SetPosition(-0.90, -0.90); fDisabledIcon->SetPosition(-0.90, -0.90);
fDisabledIcon->SetSize(0.0675, 0.09); fDisabledIcon->SetSize(0.064, 0.064, true);
fDisabledIcon->SetVisible(false); fDisabledIcon->SetVisible(false);
} }
} }
if (fDisabledIcon) if (fDisabledIcon)
{
fDisabledIcon->SetSize(0.064, 0.064, true); // Re-compute plate size in case the aspect ratio has changed.
fDisabledIcon->SetVisible(b); fDisabledIcon->SetVisible(b);
} }
}
void plVoiceRecorder::DrawTalkIcon(bool b) void plVoiceRecorder::DrawTalkIcon(bool b)
{ {
@ -225,13 +227,14 @@ void plVoiceRecorder::DrawTalkIcon(bool b)
if (fTalkIcon) if (fTalkIcon)
{ fTalkIcon->CreateFromResource( TALKING ); { fTalkIcon->CreateFromResource( TALKING );
fTalkIcon->SetPosition(-0.9,-0.9); fTalkIcon->SetPosition(-0.9,-0.9);
fTalkIcon->SetSize(0.0675, 0.09); fTalkIcon->SetSize(0.064, 0.064, true);
fTalkIcon->SetVisible(false); fTalkIcon->SetVisible(false);
} }
} }
if (fTalkIcon) if (fTalkIcon)
{ {
fTalkIcon->SetSize(0.064, 0.064, true); // Re-compute plate size in case the aspect ratio has changed.
fTalkIcon->SetVisible(b); fTalkIcon->SetVisible(b);
} }
} }

Loading…
Cancel
Save