mirror of https://github.com/stella-emu/stella.git
Added ability to change debug colors from "Video Settings".
Moved ColorWidget from src/debugger/gui to src/gui, since it needs to be compiled even when the debugger is disabled. Minor code refactoring.
This commit is contained in:
parent
d9f52599dc
commit
626ff450d9
|
@ -14,7 +14,6 @@ MODULE_OBJS := \
|
||||||
src/debugger/gui/TiaInfoWidget.o \
|
src/debugger/gui/TiaInfoWidget.o \
|
||||||
src/debugger/gui/TiaOutputWidget.o \
|
src/debugger/gui/TiaOutputWidget.o \
|
||||||
src/debugger/gui/TiaZoomWidget.o \
|
src/debugger/gui/TiaZoomWidget.o \
|
||||||
src/debugger/gui/ColorWidget.o \
|
|
||||||
src/debugger/gui/DataGridOpsWidget.o \
|
src/debugger/gui/DataGridOpsWidget.o \
|
||||||
src/debugger/gui/DataGridWidget.o \
|
src/debugger/gui/DataGridWidget.o \
|
||||||
src/debugger/gui/DebuggerDialog.o \
|
src/debugger/gui/DebuggerDialog.o \
|
||||||
|
|
|
@ -88,7 +88,6 @@ TIA::TIA(Console& console, Sound& sound, Settings& settings)
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
setFixedColorPalette(mySettings.getString("tia.dbgcolors"));
|
|
||||||
myTIAPinsDriven = mySettings.getBool("tiadriven");
|
myTIAPinsDriven = mySettings.getBool("tiadriven");
|
||||||
|
|
||||||
myBackground.setTIA(this);
|
myBackground.setTIA(this);
|
||||||
|
@ -145,9 +144,12 @@ void TIA::reset()
|
||||||
mySound.reset();
|
mySound.reset();
|
||||||
myDelayQueue.reset();
|
myDelayQueue.reset();
|
||||||
myFrameManager.reset();
|
myFrameManager.reset();
|
||||||
toggleFixedColors(0); // Turn off debug colours
|
|
||||||
|
|
||||||
frameReset(); // Recalculate the size of the display
|
frameReset(); // Recalculate the size of the display
|
||||||
|
|
||||||
|
// Must be done last, after all other items have reset
|
||||||
|
enableFixedColors(false);
|
||||||
|
setFixedColorPalette(mySettings.getString("tia.dbgcolors"));
|
||||||
}
|
}
|
||||||
|
|
||||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
@ -860,12 +862,8 @@ bool TIA::toggleCollisions()
|
||||||
}
|
}
|
||||||
|
|
||||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
bool TIA::toggleFixedColors(uInt8 mode)
|
bool TIA::enableFixedColors(bool enable)
|
||||||
{
|
{
|
||||||
// If mode is 0 or 1, use it as a boolean (off or on)
|
|
||||||
// Otherwise, flip the state
|
|
||||||
bool on = (mode == 0 || mode == 1) ? bool(mode) : myColorHBlank == 0;
|
|
||||||
|
|
||||||
int layout = myFrameManager.layout() == FrameLayout::pal ? 1 : 0;
|
int layout = myFrameManager.layout() == FrameLayout::pal ? 1 : 0;
|
||||||
myMissile0.setDebugColor(myFixedColorPalette[layout][FixedObject::M0]);
|
myMissile0.setDebugColor(myFixedColorPalette[layout][FixedObject::M0]);
|
||||||
myMissile1.setDebugColor(myFixedColorPalette[layout][FixedObject::M1]);
|
myMissile1.setDebugColor(myFixedColorPalette[layout][FixedObject::M1]);
|
||||||
|
@ -875,21 +873,26 @@ bool TIA::toggleFixedColors(uInt8 mode)
|
||||||
myPlayfield.setDebugColor(myFixedColorPalette[layout][FixedObject::PF]);
|
myPlayfield.setDebugColor(myFixedColorPalette[layout][FixedObject::PF]);
|
||||||
myBackground.setDebugColor(FixedColor::BK_GREY);
|
myBackground.setDebugColor(FixedColor::BK_GREY);
|
||||||
|
|
||||||
myMissile0.enableDebugColors(on);
|
myMissile0.enableDebugColors(enable);
|
||||||
myMissile1.enableDebugColors(on);
|
myMissile1.enableDebugColors(enable);
|
||||||
myPlayer0.enableDebugColors(on);
|
myPlayer0.enableDebugColors(enable);
|
||||||
myPlayer1.enableDebugColors(on);
|
myPlayer1.enableDebugColors(enable);
|
||||||
myBall.enableDebugColors(on);
|
myBall.enableDebugColors(enable);
|
||||||
myPlayfield.enableDebugColors(on);
|
myPlayfield.enableDebugColors(enable);
|
||||||
myBackground.enableDebugColors(on);
|
myBackground.enableDebugColors(enable);
|
||||||
myColorHBlank = on ? FixedColor::HBLANK_WHITE : 0x00;
|
myColorHBlank = enable ? FixedColor::HBLANK_WHITE : 0x00;
|
||||||
|
|
||||||
return on;
|
return enable;
|
||||||
}
|
}
|
||||||
|
|
||||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
void TIA::setFixedColorPalette(const string& colors)
|
bool TIA::setFixedColorPalette(const string& colors)
|
||||||
{
|
{
|
||||||
|
string s = colors;
|
||||||
|
sort(s.begin(), s.end());
|
||||||
|
if(s != "bgopry")
|
||||||
|
return false;
|
||||||
|
|
||||||
for(int i = 0; i < 6; ++i)
|
for(int i = 0; i < 6; ++i)
|
||||||
{
|
{
|
||||||
switch(colors[i])
|
switch(colors[i])
|
||||||
|
@ -920,6 +923,12 @@ void TIA::setFixedColorPalette(const string& colors)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// If already in fixed debug colours mode, update the current palette
|
||||||
|
if(usingFixedColors())
|
||||||
|
enableFixedColors(true);
|
||||||
|
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
|
|
@ -60,6 +60,25 @@ class TIA : public Device
|
||||||
shuffleBL = 0xF2
|
shuffleBL = 0xF2
|
||||||
};
|
};
|
||||||
|
|
||||||
|
enum FixedColor {
|
||||||
|
NTSC_RED = 0x30,
|
||||||
|
NTSC_ORANGE = 0x38,
|
||||||
|
NTSC_YELLOW = 0x1c,
|
||||||
|
NTSC_GREEN = 0xc4,
|
||||||
|
NTSC_BLUE = 0x9e,
|
||||||
|
NTSC_PURPLE = 0x66,
|
||||||
|
|
||||||
|
PAL_RED = 0x62,
|
||||||
|
PAL_ORANGE = 0x4a,
|
||||||
|
PAL_YELLOW = 0x2e,
|
||||||
|
PAL_GREEN = 0x34,
|
||||||
|
PAL_BLUE = 0xbc,
|
||||||
|
PAL_PURPLE = 0xa6,
|
||||||
|
|
||||||
|
BK_GREY = 0x0a,
|
||||||
|
HBLANK_WHITE = 0x0e
|
||||||
|
};
|
||||||
|
|
||||||
public:
|
public:
|
||||||
friend class TIADebug;
|
friend class TIADebug;
|
||||||
friend class RiotDebug;
|
friend class RiotDebug;
|
||||||
|
@ -275,12 +294,12 @@ class TIA : public Device
|
||||||
/**
|
/**
|
||||||
Enables/disable/toggle/query 'fixed debug colors' mode.
|
Enables/disable/toggle/query 'fixed debug colors' mode.
|
||||||
|
|
||||||
@param mode 1/0 indicates on/off, otherwise flip from
|
@param enable Whether to enable fixed debug colors mode
|
||||||
its current state
|
|
||||||
|
|
||||||
@return Whether the mode was enabled or disabled
|
@return Whether the mode was enabled or disabled
|
||||||
*/
|
*/
|
||||||
bool toggleFixedColors(uInt8 mode = 2);
|
bool enableFixedColors(bool enable);
|
||||||
|
bool toggleFixedColors() { return enableFixedColors(!usingFixedColors()); }
|
||||||
bool usingFixedColors() const { return myColorHBlank != 0x00; }
|
bool usingFixedColors() const { return myColorHBlank != 0x00; }
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -291,8 +310,10 @@ class TIA : public Device
|
||||||
@param colors Each character in the 6-char string represents the
|
@param colors Each character in the 6-char string represents the
|
||||||
first letter of the color to use for
|
first letter of the color to use for
|
||||||
P0/M0/P1/M1/PF/BL, respectively.
|
P0/M0/P1/M1/PF/BL, respectively.
|
||||||
|
|
||||||
|
@return True if colors were changed successfully, else false
|
||||||
*/
|
*/
|
||||||
void setFixedColorPalette(const string& colors);
|
bool setFixedColorPalette(const string& colors);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Enable/disable/query state of 'undriven/floating TIA pins'.
|
Enable/disable/query state of 'undriven/floating TIA pins'.
|
||||||
|
@ -384,24 +405,6 @@ class TIA : public Device
|
||||||
enum HState {blank, frame};
|
enum HState {blank, frame};
|
||||||
enum Priority {pfp, score, normal};
|
enum Priority {pfp, score, normal};
|
||||||
|
|
||||||
enum FixedColor {
|
|
||||||
NTSC_RED = 0x30,
|
|
||||||
NTSC_ORANGE = 0x38,
|
|
||||||
NTSC_YELLOW = 0x1c,
|
|
||||||
NTSC_GREEN = 0xc4,
|
|
||||||
NTSC_BLUE = 0x9e,
|
|
||||||
NTSC_PURPLE = 0x66,
|
|
||||||
|
|
||||||
PAL_RED = 0x62,
|
|
||||||
PAL_ORANGE = 0x4a,
|
|
||||||
PAL_YELLOW = 0x2e,
|
|
||||||
PAL_GREEN = 0x34,
|
|
||||||
PAL_BLUE = 0xbc,
|
|
||||||
PAL_PURPLE = 0xa6,
|
|
||||||
|
|
||||||
BK_GREY = 0x0a,
|
|
||||||
HBLANK_WHITE = 0x0e
|
|
||||||
};
|
|
||||||
enum FixedObject { P0, M0, P1, M1, PF, BL };
|
enum FixedObject { P0, M0, P1, M1, PF, BL };
|
||||||
FixedColor myFixedColorPalette[2][6];
|
FixedColor myFixedColorPalette[2][6];
|
||||||
|
|
||||||
|
|
|
@ -30,7 +30,8 @@ ColorWidget::ColorWidget(GuiObject* boss, const GUI::Font& font,
|
||||||
: Widget(boss, font, x, y, w, h),
|
: Widget(boss, font, x, y, w, h),
|
||||||
CommandSender(boss),
|
CommandSender(boss),
|
||||||
_color(0),
|
_color(0),
|
||||||
_cmd(cmd)
|
_cmd(cmd),
|
||||||
|
_crossGrid(false)
|
||||||
{
|
{
|
||||||
_flags = WIDGET_ENABLED | WIDGET_CLEARBG | WIDGET_RETAIN_FOCUS;
|
_flags = WIDGET_ENABLED | WIDGET_CLEARBG | WIDGET_RETAIN_FOCUS;
|
||||||
}
|
}
|
|
@ -23,6 +23,7 @@
|
||||||
#include "Dialog.hxx"
|
#include "Dialog.hxx"
|
||||||
#include "Menu.hxx"
|
#include "Menu.hxx"
|
||||||
#include "OSystem.hxx"
|
#include "OSystem.hxx"
|
||||||
|
#include "ColorWidget.hxx"
|
||||||
#include "EditTextWidget.hxx"
|
#include "EditTextWidget.hxx"
|
||||||
#include "PopUpWidget.hxx"
|
#include "PopUpWidget.hxx"
|
||||||
#include "Console.hxx"
|
#include "Console.hxx"
|
||||||
|
@ -310,6 +311,42 @@ VideoDialog::VideoDialog(OSystem& osystem, DialogContainer& parent,
|
||||||
tabID = myTab->addTab(" Debug Colors ");
|
tabID = myTab->addTab(" Debug Colors ");
|
||||||
xpos = ypos = 8;
|
xpos = ypos = 8;
|
||||||
|
|
||||||
|
items.clear();
|
||||||
|
VarList::push_back(items, "Red", "r");
|
||||||
|
VarList::push_back(items, "Orange", "o");
|
||||||
|
VarList::push_back(items, "Yellow", "y");
|
||||||
|
VarList::push_back(items, "Green", "g");
|
||||||
|
VarList::push_back(items, "Blue", "b");
|
||||||
|
VarList::push_back(items, "Purple", "p");
|
||||||
|
|
||||||
|
static constexpr int dbg_cmds[6] = {
|
||||||
|
kP0ColourChangedCmd, kM0ColourChangedCmd, kP1ColourChangedCmd,
|
||||||
|
kM1ColourChangedCmd, kPFColourChangedCmd, kBLColourChangedCmd
|
||||||
|
};
|
||||||
|
|
||||||
|
auto createDebugColourWidgets = [&](int idx, const string& desc) {
|
||||||
|
int x = xpos;
|
||||||
|
myDbgColour[idx] = new PopUpWidget(myTab, font, x, ypos,
|
||||||
|
pwidth, lineHeight, items, desc, lwidth, dbg_cmds[idx]);
|
||||||
|
wid.push_back(myDbgColour[idx]);
|
||||||
|
x += myDbgColour[idx]->getWidth() + 10;
|
||||||
|
myDbgColourSwatch[idx] = new ColorWidget(myTab, font, x, ypos,
|
||||||
|
uInt32(2*lineHeight), lineHeight);
|
||||||
|
ypos += lineHeight + 8;
|
||||||
|
};
|
||||||
|
|
||||||
|
createDebugColourWidgets(0, "Player 0 ");
|
||||||
|
createDebugColourWidgets(1, "Missile 0 ");
|
||||||
|
createDebugColourWidgets(2, "Player 1 ");
|
||||||
|
createDebugColourWidgets(3, "Missile 1 ");
|
||||||
|
createDebugColourWidgets(4, "Playfield ");
|
||||||
|
createDebugColourWidgets(5, "Ball ");
|
||||||
|
|
||||||
|
// Add message concerning usage
|
||||||
|
ypos = myTab->getHeight() - 5 - fontHeight - infofont.getFontHeight() - 10;
|
||||||
|
new StaticTextWidget(myTab, infofont, 10, ypos,
|
||||||
|
font.getStringWidth("(*) Colors must be different for each object"), fontHeight,
|
||||||
|
"(*) Colors must be different for each object", kTextAlignLeft);
|
||||||
|
|
||||||
// Activate the first tab
|
// Activate the first tab
|
||||||
myTab->setActiveTab(0);
|
myTab->setActiveTab(0);
|
||||||
|
@ -412,6 +449,9 @@ void VideoDialog::loadConfig()
|
||||||
myTVScanIntenseLabel->setLabel(instance().settings().getString("tv.scanlines"));
|
myTVScanIntenseLabel->setLabel(instance().settings().getString("tv.scanlines"));
|
||||||
myTVScanInterpolate->setState(instance().settings().getBool("tv.scaninter"));
|
myTVScanInterpolate->setState(instance().settings().getBool("tv.scaninter"));
|
||||||
|
|
||||||
|
// Debug colours
|
||||||
|
handleDebugColours(instance().settings().getString("tia.dbgcolors"));
|
||||||
|
|
||||||
myTab->loadConfig();
|
myTab->loadConfig();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -510,6 +550,14 @@ void VideoDialog::saveConfig()
|
||||||
instance().settings().setValue("tv.scanlines", myTVScanIntenseLabel->getLabel());
|
instance().settings().setValue("tv.scanlines", myTVScanIntenseLabel->getLabel());
|
||||||
instance().settings().setValue("tv.scaninter", myTVScanInterpolate->getState());
|
instance().settings().setValue("tv.scaninter", myTVScanInterpolate->getState());
|
||||||
|
|
||||||
|
// Debug colours
|
||||||
|
string dbgcolors;
|
||||||
|
for(int i = 0; i < 6; ++i)
|
||||||
|
dbgcolors += myDbgColour[i]->getSelectedTag().toString();
|
||||||
|
if(instance().hasConsole() &&
|
||||||
|
instance().console().tia().setFixedColorPalette(dbgcolors))
|
||||||
|
instance().settings().setValue("tia.dbgcolors", dbgcolors);
|
||||||
|
|
||||||
// Finally, issue a complete framebuffer re-initialization
|
// Finally, issue a complete framebuffer re-initialization
|
||||||
instance().createFrameBuffer();
|
instance().createFrameBuffer();
|
||||||
}
|
}
|
||||||
|
@ -566,6 +614,12 @@ void VideoDialog::setDefaults()
|
||||||
loadTVAdjustables(NTSCFilter::PRESET_CUSTOM);
|
loadTVAdjustables(NTSCFilter::PRESET_CUSTOM);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
case 2: // Debug colours
|
||||||
|
{
|
||||||
|
handleDebugColours("roygpb");
|
||||||
|
break;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
_dirty = true;
|
_dirty = true;
|
||||||
|
@ -619,6 +673,51 @@ void VideoDialog::handleTVJitterChange(bool enable)
|
||||||
myTVJitterRecLabel->setEnabled(enable);
|
myTVJitterRecLabel->setEnabled(enable);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
void VideoDialog::handleDebugColours(int idx, int color)
|
||||||
|
{
|
||||||
|
if(idx < 0 || idx > 5)
|
||||||
|
return;
|
||||||
|
|
||||||
|
static constexpr int dbg_color[2][6] = {
|
||||||
|
{ TIA::FixedColor::NTSC_RED,
|
||||||
|
TIA::FixedColor::NTSC_ORANGE,
|
||||||
|
TIA::FixedColor::NTSC_YELLOW,
|
||||||
|
TIA::FixedColor::NTSC_GREEN,
|
||||||
|
TIA::FixedColor::NTSC_BLUE,
|
||||||
|
TIA::FixedColor::NTSC_PURPLE
|
||||||
|
},
|
||||||
|
{ TIA::FixedColor::PAL_RED,
|
||||||
|
TIA::FixedColor::PAL_ORANGE,
|
||||||
|
TIA::FixedColor::PAL_YELLOW,
|
||||||
|
TIA::FixedColor::PAL_GREEN,
|
||||||
|
TIA::FixedColor::PAL_BLUE,
|
||||||
|
TIA::FixedColor::PAL_PURPLE
|
||||||
|
}
|
||||||
|
};
|
||||||
|
int mode = instance().console().tia().frameLayout() == FrameLayout::ntsc ? 0 : 1;
|
||||||
|
myDbgColourSwatch[idx]->setColor(dbg_color[mode][color]);
|
||||||
|
myDbgColour[idx]->setSelectedIndex(color);
|
||||||
|
}
|
||||||
|
|
||||||
|
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
void VideoDialog::handleDebugColours(const string& colors)
|
||||||
|
{
|
||||||
|
for(int i = 0; i < 6; ++i)
|
||||||
|
{
|
||||||
|
switch(colors[i])
|
||||||
|
{
|
||||||
|
case 'r': handleDebugColours(i, 0); break;
|
||||||
|
case 'o': handleDebugColours(i, 1); break;
|
||||||
|
case 'y': handleDebugColours(i, 2); break;
|
||||||
|
case 'g': handleDebugColours(i, 3); break;
|
||||||
|
case 'b': handleDebugColours(i, 4); break;
|
||||||
|
case 'p': handleDebugColours(i, 5); break;
|
||||||
|
default: break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
void VideoDialog::loadTVAdjustables(NTSCFilter::Preset preset)
|
void VideoDialog::loadTVAdjustables(NTSCFilter::Preset preset)
|
||||||
{
|
{
|
||||||
|
@ -719,6 +818,25 @@ void VideoDialog::handleCommand(CommandSender* sender, int cmd,
|
||||||
case kCloneCustomCmd: loadTVAdjustables(NTSCFilter::PRESET_CUSTOM);
|
case kCloneCustomCmd: loadTVAdjustables(NTSCFilter::PRESET_CUSTOM);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case kP0ColourChangedCmd:
|
||||||
|
handleDebugColours(0, myDbgColour[0]->getSelected());
|
||||||
|
break;
|
||||||
|
case kM0ColourChangedCmd:
|
||||||
|
handleDebugColours(1, myDbgColour[1]->getSelected());
|
||||||
|
break;
|
||||||
|
case kP1ColourChangedCmd:
|
||||||
|
handleDebugColours(2, myDbgColour[2]->getSelected());
|
||||||
|
break;
|
||||||
|
case kM1ColourChangedCmd:
|
||||||
|
handleDebugColours(3, myDbgColour[3]->getSelected());
|
||||||
|
break;
|
||||||
|
case kPFColourChangedCmd:
|
||||||
|
handleDebugColours(4, myDbgColour[4]->getSelected());
|
||||||
|
break;
|
||||||
|
case kBLColourChangedCmd:
|
||||||
|
handleDebugColours(5, myDbgColour[5]->getSelected());
|
||||||
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
Dialog::handleCommand(sender, cmd, data, 0);
|
Dialog::handleCommand(sender, cmd, data, 0);
|
||||||
break;
|
break;
|
||||||
|
|
|
@ -21,6 +21,7 @@
|
||||||
class CommandSender;
|
class CommandSender;
|
||||||
class CheckboxWidget;
|
class CheckboxWidget;
|
||||||
class DialogContainer;
|
class DialogContainer;
|
||||||
|
class ColorWidget;
|
||||||
class PopUpWidget;
|
class PopUpWidget;
|
||||||
class SliderWidget;
|
class SliderWidget;
|
||||||
class StaticTextWidget;
|
class StaticTextWidget;
|
||||||
|
@ -45,6 +46,8 @@ class VideoDialog : public Dialog
|
||||||
void handleFullscreenChange(bool enable);
|
void handleFullscreenChange(bool enable);
|
||||||
void handleTVModeChange(NTSCFilter::Preset);
|
void handleTVModeChange(NTSCFilter::Preset);
|
||||||
void handleTVJitterChange(bool enable);
|
void handleTVJitterChange(bool enable);
|
||||||
|
void handleDebugColours(int cmd, int color);
|
||||||
|
void handleDebugColours(const string& colors);
|
||||||
void loadTVAdjustables(NTSCFilter::Preset preset);
|
void loadTVAdjustables(NTSCFilter::Preset preset);
|
||||||
void handleCommand(CommandSender* sender, int cmd, int data, int id) override;
|
void handleCommand(CommandSender* sender, int cmd, int data, int id) override;
|
||||||
|
|
||||||
|
@ -118,6 +121,10 @@ class VideoDialog : public Dialog
|
||||||
ButtonWidget* myCloneBad;
|
ButtonWidget* myCloneBad;
|
||||||
ButtonWidget* myCloneCustom;
|
ButtonWidget* myCloneCustom;
|
||||||
|
|
||||||
|
// Debug colours selection
|
||||||
|
PopUpWidget* myDbgColour[6];
|
||||||
|
ColorWidget* myDbgColourSwatch[6];
|
||||||
|
|
||||||
enum {
|
enum {
|
||||||
kNAspectRatioChanged = 'VDan',
|
kNAspectRatioChanged = 'VDan',
|
||||||
kPAspectRatioChanged = 'VDap',
|
kPAspectRatioChanged = 'VDap',
|
||||||
|
@ -145,7 +152,14 @@ class VideoDialog : public Dialog
|
||||||
kCloneSvideoCmd = 'CLsv',
|
kCloneSvideoCmd = 'CLsv',
|
||||||
kCloneRGBCmd = 'CLrb',
|
kCloneRGBCmd = 'CLrb',
|
||||||
kCloneBadCmd = 'CLbd',
|
kCloneBadCmd = 'CLbd',
|
||||||
kCloneCustomCmd = 'CLcu'
|
kCloneCustomCmd = 'CLcu',
|
||||||
|
|
||||||
|
kP0ColourChangedCmd = 'GOp0',
|
||||||
|
kM0ColourChangedCmd = 'GOm0',
|
||||||
|
kP1ColourChangedCmd = 'GOp1',
|
||||||
|
kM1ColourChangedCmd = 'GOm1',
|
||||||
|
kPFColourChangedCmd = 'GOpf',
|
||||||
|
kBLColourChangedCmd = 'GObl'
|
||||||
};
|
};
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|
|
@ -4,6 +4,7 @@ MODULE_OBJS := \
|
||||||
src/gui/AboutDialog.o \
|
src/gui/AboutDialog.o \
|
||||||
src/gui/AudioDialog.o \
|
src/gui/AudioDialog.o \
|
||||||
src/gui/BrowserDialog.o \
|
src/gui/BrowserDialog.o \
|
||||||
|
src/gui/ColorWidget.o \
|
||||||
src/gui/ComboDialog.o \
|
src/gui/ComboDialog.o \
|
||||||
src/gui/CommandDialog.o \
|
src/gui/CommandDialog.o \
|
||||||
src/gui/CommandMenu.o \
|
src/gui/CommandMenu.o \
|
||||||
|
|
Loading…
Reference in New Issue