Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add some tooltips for things that felt like they could use them #1443

Open
wants to merge 3 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions src/gui/src/PatternEditor/PatternEditorPanel.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -164,6 +164,10 @@ PatternEditorPanel::PatternEditorPanel( QWidget *pParent )
m_pResolutionLbl = new ClickableLabel( m_pSizeResol, QSize( 28, 13 ), HydrogenApp::get_instance()->getCommonStrings()->getResolutionLabel(), ClickableLabel::Color::Dark );
m_pResolutionLbl->setAlignment( Qt::AlignRight );
m_pResolutionLbl->move( 155, 4 );
QString sTip = tr( "Resolution of the pattern grid sets how finely notes may be placed.\n"
"Hold Alt to place or move notes independently of the grid." );
m_pResolutionLbl->setToolTip( sTip );
m_pResolutionCombo->setToolTip( sTip );


m_pRec = new QGroupBox( nullptr );
Expand Down
78 changes: 77 additions & 1 deletion src/gui/src/PreferencesDialog/PreferencesDialog_UI.ui
Original file line number Diff line number Diff line change
Expand Up @@ -91,20 +91,29 @@
</item>
<item>
<widget class="QCheckBox" name="hideKeyboardCursor">
<property name="toolTip">
<string>Hide the keyboard input cursor when editing using the mouse</string>
</property>
<property name="text">
<string>&amp;Hide keyboard input cursor</string>
</property>
</widget>
</item>
<item>
<widget class="QCheckBox" name="useLashCheckbox">
<property name="toolTip">
<string>Use the LASH Audio Session Handler</string>
</property>
<property name="text">
<string extracomment="LASH (acronym for LASH Audio Session Handler) is a protocol allowing for session management in Linux (recalling songs, preferences, and JACK port connections).">Use &amp;LASH</string>
</property>
</widget>
</item>
<item>
<widget class="QCheckBox" name="patternFollowsSongCheckbox">
<property name="toolTip">
<string>Keep a currently-playing pattern selected when playing in Song Mode</string>
</property>
<property name="text">
<string>Selected pattern follows song</string>
</property>
Expand Down Expand Up @@ -211,6 +220,9 @@
<layout class="QGridLayout" name="gridLayout">
<item row="0" column="0" colspan="2">
<widget class="QLabel" name="pathToRubberbandExLable">
<property name="toolTip">
<string>Rubberband is used to time-stretch or compress samples to playback at different pitches.</string>
</property>
<property name="text">
<string>Path to the Rubberband command-line utility</string>
</property>
Expand All @@ -237,6 +249,9 @@
<height>0</height>
</size>
</property>
<property name="toolTip">
<string>Rubberband is used to time-stretch or compress samples to playback at different pitches.</string>
</property>
</widget>
</item>
</layout>
Expand Down Expand Up @@ -266,7 +281,11 @@
<widget class="QComboBox" name="driverComboBox"/>
</item>
<item row="4" column="1">
<widget class="HostAPIComboBox" name="portaudioHostAPIComboBox"/>
<widget class="HostAPIComboBox" name="portaudioHostAPIComboBox">
<property name="toolTip">
<string>Underlying system API to use</string>
</property>
</widget>
</item>
<item row="9" column="1">
<widget class="QComboBox" name="trackOutputComboBox">
Expand All @@ -293,6 +312,9 @@
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="toolTip">
<string>Audio output device to send Hydrogen audio to</string>
</property>
<property name="editable">
<bool>true</bool>
</property>
Expand All @@ -313,6 +335,9 @@
</item>
<item row="4" column="0">
<widget class="QLabel" name="portaudioHostAPILabel">
<property name="toolTip">
<string>Underlying system API to use</string>
</property>
<property name="text">
<string>Host API</string>
</property>
Expand Down Expand Up @@ -342,6 +367,13 @@
<height>22</height>
</size>
</property>
<property name="toolTip">
<string>Audio buffer size (in frames). This generally determines the minimum audio latency the system can achieve. Actual audio latency will be greater.

Selecting a buffer size that is too small may lead to audible glitches, particularly if the system becomes more heavily loaded.

Use with caution.</string>
</property>
<property name="minimum">
<number>100</number>
</property>
Expand Down Expand Up @@ -381,20 +413,31 @@
</item>
<item row="5" column="0">
<widget class="QLabel" name="audioDeviceLbl">
<property name="toolTip">
<string>Audio output device to send Hydrogen audio to</string>
</property>
<property name="text">
<string>Device</string>
</property>
</widget>
</item>
<item row="7" column="0">
<widget class="QLabel" name="latencyTargetLabel">
<property name="toolTip">
<string>Set the target latency that the audio system attempts to achieve.
Selecting a latency that is too small may lead to audible glitches, particularly if the system becomes more heavily loaded.
Use with caution.</string>
</property>
<property name="text">
<string>Latency target</string>
</property>
</widget>
</item>
<item row="8" column="1">
<widget class="QComboBox" name="sampleRateComboBox">
<property name="toolTip">
<string>Audio sample rate (or frame rate) to use. 44100 frames/second is CD-quality.</string>
</property>
<property name="currentIndex">
<number>0</number>
</property>
Expand Down Expand Up @@ -428,6 +471,13 @@
<height>22</height>
</size>
</property>
<property name="toolTip">
<string>Audio buffer size (in frames). This generally determines the minimum audio latency the system can achieve. Actual audio latency will be greater.

Selecting a buffer size that is too small may lead to audible glitches, particularly if the system becomes more heavily loaded.

Use with caution.</string>
</property>
<property name="text">
<string>Buffer size</string>
</property>
Expand All @@ -441,6 +491,9 @@
<height>22</height>
</size>
</property>
<property name="toolTip">
<string>Audio sample rate (or frame rate) to use. 44100 frames/second is CD-quality.</string>
</property>
<property name="text">
<string>Sample rate</string>
</property>
Expand All @@ -450,6 +503,11 @@
<layout class="QHBoxLayout" name="horizontalLayout_11">
<item>
<widget class="QSpinBox" name="latencyTargetSpinBox">
<property name="toolTip">
<string>Set the target latency that the audio system attempts to achieve.
Selecting a latency that is too small may lead to audible glitches, particularly if the system becomes more heavily loaded.
Use with caution.</string>
</property>
<property name="maximum">
<number>48000</number>
</property>
Expand All @@ -460,6 +518,11 @@
</item>
<item>
<widget class="QLabel" name="latencyValueLabel">
<property name="toolTip">
<string>Set the target latency that the audio system attempts to achieve.
Selecting a latency that is too small may lead to audible glitches, particularly if the system becomes more heavily loaded.
Use with caution.</string>
</property>
<property name="text">
<string/>
</property>
Expand Down Expand Up @@ -505,6 +568,9 @@
</item>
<item>
<widget class="QPushButton" name="restartDriverBtn">
<property name="toolTip">
<string>Restart audio system to apply currently selected parameters.</string>
</property>
<property name="text">
<string>Apply and restart output</string>
</property>
Expand Down Expand Up @@ -586,13 +652,23 @@
<layout class="QHBoxLayout" name="horizontalLayout_31">
<item>
<widget class="QLabel" name="resapelingLbl">
<property name="toolTip">
<string>Interpolation method used when rendering samples at different frequencies.
Linear interpolation is fastest and provides reasonable sound quality. Others are higher quality but have higher CPU usage penalties.
The differences will be most noticable where samples are played back at much different frequencies from the audio system sample rate (eg. low quality samples, particularly played at low pitch).</string>
</property>
<property name="text">
<string>Interpolate resampling</string>
</property>
</widget>
</item>
<item>
<widget class="QComboBox" name="resampleComboBox">
<property name="toolTip">
<string>Interpolation method used when rendering samples at different frequencies.
Linear interpolation is fastest and provides reasonable sound quality. Others are higher quality but have higher CPU usage penalties.
The differences will be most noticable where samples are played back at much different frequencies from the audio system sample rate (eg. low quality samples, particularly played at low pitch).</string>
</property>
<item>
<property name="text">
<string>Linear</string>
Expand Down
9 changes: 6 additions & 3 deletions src/gui/src/SongEditor/SongEditorPanel.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -129,19 +129,22 @@ SongEditorPanel::SongEditorPanel(QWidget *pParent)

// Two buttons sharing the same position and either of them is
// shown unpressed.
m_pModeActionSingleBtn = new Button( pBackPanel, QSize( 23, 19 ), Button::Type::Push, "single_layer.svg", "", false, QSize( 15, 11 ), tr( "single pattern mode") );
m_pModeActionSingleBtn = new Button( pBackPanel, QSize( 23, 19 ), Button::Type::Push, "single_layer.svg", "",
false, QSize( 15, 11 ), tr( "Focused single pattern mode") );
m_pModeActionSingleBtn->move( 170, 26 );
m_pModeActionSingleBtn->setVisible( pPref->patternModePlaysSelected() );
connect( m_pModeActionSingleBtn, SIGNAL( pressed() ), this, SLOT( modeActionBtnPressed() ) );

m_pModeActionMultipleBtn = new Button( pBackPanel, QSize( 23, 19 ), Button::Type::Push, "multiple_layers.svg", "", false, QSize( 19, 15 ), tr( "stacked pattern mode") );
m_pModeActionMultipleBtn = new Button( pBackPanel, QSize( 23, 19 ), Button::Type::Push, "multiple_layers.svg", "",
false, QSize( 19, 15 ),
tr( "stacked pattern mode: show and play multiple patterns at a time") );
m_pModeActionMultipleBtn->move( 170, 26 );
m_pModeActionMultipleBtn->hide();
m_pModeActionMultipleBtn->setVisible( pPref->patternModePlaysSelected() );
connect( m_pModeActionMultipleBtn, SIGNAL( pressed() ), this, SLOT( modeActionBtnPressed() ) );
setModeActionBtn( Preferences::get_instance()->patternModePlaysSelected() );

// ZOOM
// ZOOM
m_pHScrollBar = new QScrollBar( Qt::Horizontal, nullptr );
m_pHScrollBar->setObjectName( "SongEditorPanel HScrollBar" );
connect( m_pHScrollBar, SIGNAL(valueChanged(int)), this, SLOT( hScrollTo(int) ) );
Expand Down