mirror of https://github.com/stella-emu/stella.git
added tooltips to DeveloperDialog
This commit is contained in:
parent
bf9b5b5557
commit
83da128ee9
|
@ -115,10 +115,11 @@ void DeveloperDialog::addEmulationTab(const GUI::Font& font)
|
|||
"Console info overlay");
|
||||
wid.push_back(myFrameStatsWidget);
|
||||
|
||||
|
||||
myDetectedInfoWidget = new CheckboxWidget(myTab, font,
|
||||
myFrameStatsWidget->getRight() + fontWidth * 2.5, ypos + 1,
|
||||
"Detected settings info");
|
||||
myDetectedInfoWidget->setToolTip("Display detected controllers, bankswitching\n"
|
||||
"and TV types at ROM start.");
|
||||
wid.push_back(myDetectedInfoWidget);
|
||||
ypos += lineHeight + VGAP;
|
||||
|
||||
|
@ -131,6 +132,8 @@ void DeveloperDialog::addEmulationTab(const GUI::Font& font)
|
|||
|
||||
myConsoleWidget = new PopUpWidget(myTab, font, HBORDER + INDENT * 1, ypos, pwidth, lineHeight, items,
|
||||
"Console ", lwidth, kConsole);
|
||||
myConsoleWidget->setToolTip("Emulate Color/B&W/Pause key and zero\n"
|
||||
"page RAM initialization differenly.");
|
||||
wid.push_back(myConsoleWidget);
|
||||
ypos += lineHeight + VGAP;
|
||||
|
||||
|
@ -141,6 +144,8 @@ void DeveloperDialog::addEmulationTab(const GUI::Font& font)
|
|||
|
||||
myRandomBankWidget = new CheckboxWidget(myTab, font, HBORDER + INDENT * 2, ypos + 1,
|
||||
"Random startup bank");
|
||||
myRandomBankWidget->setToolTip("Randomize the startup bank for\n"
|
||||
"most classic bankswitching types.");
|
||||
wid.push_back(myRandomBankWidget);
|
||||
ypos += lineHeight + VGAP;
|
||||
|
||||
|
@ -168,17 +173,23 @@ void DeveloperDialog::addEmulationTab(const GUI::Font& font)
|
|||
// How to handle undriven TIA pins
|
||||
myUndrivenPinsWidget = new CheckboxWidget(myTab, font, HBORDER + INDENT * 1, ypos + 1,
|
||||
"Drive unused TIA pins randomly on a read/peek");
|
||||
myUndrivenPinsWidget->setToolTip("Read TIA pins random instead of last databus values.\n"
|
||||
"Helps detecting missing '#' for immediate loads.");
|
||||
wid.push_back(myUndrivenPinsWidget);
|
||||
ypos += lineHeight + VGAP;
|
||||
|
||||
#ifdef DEBUGGER_SUPPORT
|
||||
myRWPortBreakWidget = new CheckboxWidget(myTab, font, HBORDER + INDENT * 1, ypos + 1,
|
||||
"Break on reads from write ports");
|
||||
myRWPortBreakWidget->setToolTip("Cause reads from write ports to interrupt\n"
|
||||
"emulation and enter debugger.");
|
||||
wid.push_back(myRWPortBreakWidget);
|
||||
ypos += lineHeight + VGAP;
|
||||
|
||||
myWRPortBreakWidget = new CheckboxWidget(myTab, font, HBORDER + INDENT * 1, ypos + 1,
|
||||
"Break on writes to read ports");
|
||||
myWRPortBreakWidget->setToolTip("Cause writes to read ports to interrupt\n"
|
||||
"emulation and enter debugger.");
|
||||
wid.push_back(myWRPortBreakWidget);
|
||||
ypos += lineHeight + VGAP;
|
||||
#endif
|
||||
|
@ -186,12 +197,16 @@ void DeveloperDialog::addEmulationTab(const GUI::Font& font)
|
|||
// Thumb ARM emulation exception
|
||||
myThumbExceptionWidget = new CheckboxWidget(myTab, font, HBORDER + INDENT * 1, ypos + 1,
|
||||
"Fatal ARM emulation error throws exception");
|
||||
myThumbExceptionWidget->setToolTip("Cause Thumb ARM emulation to throw exceptions\n"
|
||||
"on fatal errors and enter the debugger.");
|
||||
wid.push_back(myThumbExceptionWidget);
|
||||
ypos += lineHeight + VGAP;
|
||||
|
||||
// AtariVox/SaveKey EEPROM access
|
||||
myEEPROMAccessWidget = new CheckboxWidget(myTab, font, HBORDER + INDENT * 1, ypos + 1,
|
||||
"Display AtariVox/SaveKey EEPROM R/W access");
|
||||
myEEPROMAccessWidget->setToolTip("Cause message display when AtariVox/\n"
|
||||
"SaveKey EEPROM is read or written.");
|
||||
wid.push_back(myEEPROMAccessWidget);
|
||||
|
||||
// Add items for tab 0
|
||||
|
@ -239,11 +254,15 @@ void DeveloperDialog::addTiaTab(const GUI::Font& font)
|
|||
VarList::push_back(items, "Custom", "custom");
|
||||
myTIATypeWidget = new PopUpWidget(myTab, font, HBORDER + INDENT, ypos - 1,
|
||||
pwidth, lineHeight, items, "Chip type ", 0, kTIAType);
|
||||
myTIATypeWidget->setToolTip("Select which TIA chip type to emulate.\n"
|
||||
"Some types cause defined glitches.");
|
||||
wid.push_back(myTIATypeWidget);
|
||||
ypos += lineHeight + VGAP * 1;
|
||||
|
||||
myInvPhaseLabel = new StaticTextWidget(myTab, font, HBORDER + INDENT * 2, ypos + 1,
|
||||
"Inverted HMOVE clock phase for");
|
||||
myInvPhaseLabel->setToolTip("Objects react different to too\n"
|
||||
"early HM" + ELLIPSIS + " after HMOVE changes.");
|
||||
wid.push_back(myInvPhaseLabel);
|
||||
ypos += lineHeight + VGAP * 1;
|
||||
|
||||
|
@ -262,6 +281,7 @@ void DeveloperDialog::addTiaTab(const GUI::Font& font)
|
|||
|
||||
myPlayfieldLabel = new StaticTextWidget(myTab, font, HBORDER + INDENT * 2, ypos + 1,
|
||||
"Delayed playfield");
|
||||
myPlayfieldLabel->setToolTip("Playfield reacts one color clock slower to updates.");
|
||||
wid.push_back(myPlayfieldLabel);
|
||||
ypos += lineHeight + VGAP * 1;
|
||||
|
||||
|
@ -275,6 +295,7 @@ void DeveloperDialog::addTiaTab(const GUI::Font& font)
|
|||
|
||||
myBackgroundLabel = new StaticTextWidget(myTab, font, HBORDER + INDENT * 2, ypos + 1,
|
||||
"Delayed background");
|
||||
myBackgroundLabel->setToolTip("Background color reacts one color clock slower to updates.");
|
||||
wid.push_back(myBackgroundLabel);
|
||||
ypos += lineHeight + VGAP * 1;
|
||||
|
||||
|
@ -285,6 +306,7 @@ void DeveloperDialog::addTiaTab(const GUI::Font& font)
|
|||
ostringstream ss;
|
||||
ss << "Delayed VDEL" << ELLIPSIS << " swap for";
|
||||
mySwapLabel = new StaticTextWidget(myTab, font, HBORDER + INDENT * 2, ypos + 1, ss.str());
|
||||
mySwapLabel->setToolTip("VDELed objects react one color clock slower to updates.");
|
||||
wid.push_back(mySwapLabel);
|
||||
ypos += lineHeight + VGAP * 1;
|
||||
|
||||
|
@ -332,12 +354,14 @@ void DeveloperDialog::addVideoTab(const GUI::Font& font)
|
|||
// TV jitter effect
|
||||
myTVJitterWidget = new CheckboxWidget(myTab, font, HBORDER + INDENT * 1, ypos + 1,
|
||||
"Jitter/roll effect", kTVJitter);
|
||||
myTVJitterWidget->setToolTip("Enable to emulate TV loss of sync.");
|
||||
wid.push_back(myTVJitterWidget);
|
||||
myTVJitterRecWidget = new SliderWidget(myTab, font,
|
||||
myTVJitterWidget->getRight() + fontWidth * 3, ypos - 1,
|
||||
"Recovery ", 0, kTVJitterChanged);
|
||||
myTVJitterRecWidget->setMinValue(1); myTVJitterRecWidget->setMaxValue(20);
|
||||
myTVJitterRecWidget->setTickmarkIntervals(5);
|
||||
myTVJitterRecWidget->setToolTip("Define speed of sync revovery.");
|
||||
wid.push_back(myTVJitterRecWidget);
|
||||
myTVJitterRecLabelWidget = new StaticTextWidget(myTab, font,
|
||||
myTVJitterRecWidget->getRight() + 4,
|
||||
|
@ -347,6 +371,8 @@ void DeveloperDialog::addVideoTab(const GUI::Font& font)
|
|||
|
||||
myColorLossWidget = new CheckboxWidget(myTab, font, HBORDER + INDENT * 1, ypos + 1,
|
||||
"PAL color-loss");
|
||||
myColorLossWidget->setToolTip("PAL games with odd scanline count\n"
|
||||
"will be displayed without color.");
|
||||
wid.push_back(myColorLossWidget);
|
||||
ypos += lineHeight + VGAP;
|
||||
|
||||
|
@ -485,6 +511,7 @@ void DeveloperDialog::addTimeMachineTab(const GUI::Font& font)
|
|||
#endif
|
||||
myStateSizeWidget->setStepValue(20);
|
||||
myStateSizeWidget->setTickmarkIntervals(5);
|
||||
myStateSizeWidget->setToolTip("Define the total Time Machine buffer size.");
|
||||
wid.push_back(myStateSizeWidget);
|
||||
ypos += lineHeight + VGAP;
|
||||
|
||||
|
@ -498,6 +525,9 @@ void DeveloperDialog::addTimeMachineTab(const GUI::Font& font)
|
|||
#endif
|
||||
myUncompressedWidget->setStepValue(20);
|
||||
myUncompressedWidget->setTickmarkIntervals(5);
|
||||
myUncompressedWidget->setToolTip("Define the number of completely kept states.\n"
|
||||
"States beyond this number will be slowly removed\n"
|
||||
"to fit the requested horizon into the buffer.");
|
||||
wid.push_back(myUncompressedWidget);
|
||||
ypos += lineHeight + VGAP;
|
||||
|
||||
|
@ -507,6 +537,7 @@ void DeveloperDialog::addTimeMachineTab(const GUI::Font& font)
|
|||
int pwidth = font.getStringWidth("10 seconds");
|
||||
myStateIntervalWidget = new PopUpWidget(myTab, font, xpos, ypos, pwidth,
|
||||
lineHeight, items, "Interval ", 0, kIntervalChanged);
|
||||
myStateIntervalWidget->setToolTip("Define the interval between each saved state.");
|
||||
wid.push_back(myStateIntervalWidget);
|
||||
ypos += lineHeight + VGAP;
|
||||
|
||||
|
@ -515,6 +546,8 @@ void DeveloperDialog::addTimeMachineTab(const GUI::Font& font)
|
|||
VarList::push_back(items, HORIZONS[i], HOR_SETTINGS[i]);
|
||||
myStateHorizonWidget = new PopUpWidget(myTab, font, xpos, ypos, pwidth,
|
||||
lineHeight, items, "Horizon ~ ", 0, kHorizonChanged);
|
||||
myStateHorizonWidget->setToolTip("Define how far the Time Machine\n"
|
||||
"will allow moving back in time.");
|
||||
wid.push_back(myStateHorizonWidget);
|
||||
|
||||
// Add message concerning usage
|
||||
|
@ -598,6 +631,7 @@ void DeveloperDialog::addDebuggerTab(const GUI::Font& font)
|
|||
|
||||
myGhostReadsTrapWidget = new CheckboxWidget(myTab, font, HBORDER, ypos + 1,
|
||||
"Trap on 'ghost' reads");
|
||||
myGhostReadsTrapWidget->setToolTip("Traps will consider CPU 'ghost' reads too.");
|
||||
wid.push_back(myGhostReadsTrapWidget);
|
||||
|
||||
// Add message concerning usage
|
||||
|
|
Loading…
Reference in New Issue