mirror of https://github.com/stella-emu/stella.git
Changed my mind again, and decided to reactive the ROM Info stuff; it's
just too cool a feature not to include in the next release ;) Checked in some updated UI font-aware code. All of the UI's are not converted yet, but for the next release the only one that really matters is LauncherDialog. Added '-launcherfont' commandline argument and associated UI config to set the size of the font used in the ROM launcher (for now, small or large). This is useful if you activate the ROM Info and can't zoom the entire UI by 2x. Previously, this meant the ROM listing font was very small, but now you can have the launcher in 1x mode with a larger font *and* the ROM info stuff also visible. More changes are coming in a future release, so this will have to do for now. Reworked UIDialog to contain tabs, since the options were starting to become unwieldy. This pretty much ties up the last remaining items for this release, so after a little testing and updating the manual, it's time for 2.5. git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1438 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
This commit is contained in:
parent
adf9109b36
commit
848bef86f5
|
@ -13,7 +13,7 @@
|
|||
// See the file "license" for information on usage and redistribution of
|
||||
// this file, and for a DISCLAIMER OF ALL WARRANTIES.
|
||||
//
|
||||
// $Id: FrameBufferGL.cxx,v 1.99 2008-03-13 22:58:05 stephena Exp $
|
||||
// $Id: FrameBufferGL.cxx,v 1.100 2008-03-23 16:22:39 stephena Exp $
|
||||
//============================================================================
|
||||
|
||||
#ifdef DISPLAY_OPENGL
|
||||
|
@ -529,20 +529,21 @@ void FrameBufferGL::fillRect(uInt32 x, uInt32 y, uInt32 w, uInt32 h, int color)
|
|||
void FrameBufferGL::drawChar(const GUI::Font* font, uInt8 chr,
|
||||
uInt32 tx, uInt32 ty, int color)
|
||||
{
|
||||
const FontDesc& desc = font->desc();
|
||||
|
||||
// If this character is not included in the font, use the default char.
|
||||
if(chr < font->desc().firstchar ||
|
||||
chr >= font->desc().firstchar + font->desc().size)
|
||||
if(chr < desc.firstchar || chr >= desc.firstchar + desc.size)
|
||||
{
|
||||
if (chr == ' ')
|
||||
return;
|
||||
chr = font->desc().defaultchar;
|
||||
chr = desc.defaultchar;
|
||||
}
|
||||
|
||||
const Int32 w = font->getCharWidth(chr);
|
||||
const Int32 h = font->getFontHeight();
|
||||
chr -= font->desc().firstchar;
|
||||
const uInt16* tmp = font->desc().bits + (font->desc().offset ?
|
||||
font->desc().offset[chr] : (chr * h));
|
||||
chr -= desc.firstchar;
|
||||
const uInt16* tmp = desc.bits + (desc.offset ?
|
||||
desc.offset[chr] : (chr * h));
|
||||
|
||||
uInt16* buffer = (uInt16*) myTexture->pixels + ty * myBuffer.pitch + tx;
|
||||
for(int y = 0; y < h; ++y)
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
regenerated and the application recompiled.
|
||||
*/
|
||||
|
||||
#define DEF_PROPS_SIZE 2992
|
||||
#define DEF_PROPS_SIZE 2979
|
||||
|
||||
static const char* DefProps[DEF_PROPS_SIZE][21] = {
|
||||
{ "000509d1ed2b8d30a9d94be1b3b5febb", "Greg Zumwalt", "", "Jungle Jane (2003) (Greg Zumwalt) (Hack)", "Hack of Pitfall!", "Hack", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
|
@ -86,6 +86,7 @@ static const char* DefProps[DEF_PROPS_SIZE][21] = {
|
|||
{ "0685bd0bcb975ceef7041749a5454a48", "Piero Cavina", "", "11 Sprite Demo (Piero Cavina) (PD)", "", "Homebrew", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "06953ed762220dba63d63930d4ad0cc3", "", "", "Star Fire - Eckhard WIP (MP)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "069c17beb1e8e0557adb8539fdcf6cba", "", "", "Phantom II & Pirate (PAL60)", "", "Homebrew", "", "", "", "", "", "", "", "", "", "PAL60", "", "", "", "", "" },
|
||||
{ "06b0194ce992584c365278e0d7323279", "Activision", "", "Unknown Activision Game #2 (Prototype) (PAL)", "", "Prototype", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "06b6c5031b8353f3a424a5b86b8fe409", "Activision, Mike Lorenzen - Ariola", "EAX-023 - 711 023-720", "Oink! (1983) (Activision) (PAL)", "", "", "", "", "", "", "", "", "", "", "", "", "", "250", "", "", "" },
|
||||
{ "06cfd57f0559f38b9293adae9128ff88", "Telegames", "4317 A009", "Adventures on GX-12 (1989) (Telegames) (PAL)", "AKA Adventures of Tron", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "06db908011065e5ebb37f4e253c2a0b0", "", "", "Goufer (Unknown) (PAL)", "AKA Gopher", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
|
@ -119,7 +120,6 @@ static const char* DefProps[DEF_PROPS_SIZE][21] = {
|
|||
{ "08bd4c1dcc843f6a0b563d9fd80b3b11", "Quelle", "343.273 9", "Phantompanzer II (1983) (Quelle) (PAL)", "AKA Thunderground", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "08d1b6d75206edb999252caf542a2c7f", "Larry Petit", "", "Super Home Run (2003) (Larry Petit) (Hack)", "Hack of Home Run", "Hack", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "08d60a58a691c7f690162850302dc0e1", "", "", "Poker Squares (V0.27) (PAL) (2001) (B. Watson)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "08f4dc6f118f7c98e2406c180c08e78e", "Starpath", "", "Party Mix (2 of 3) (1982) (Starpath) (PAL)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "08f853e8e01e711919e734d85349220d", "Atari, Jerome Domurat, Michael Sierchio", "CX2667", "RealSports Soccer (1983) (Atari) [a]", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "0906c6e0e4bda9c10cfa4c5fc64d2f4b", "Retroactive", "", "Qb (V0.12) (NTSC) (2001) (Retroactive)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "YES", "", "" },
|
||||
{ "090f0a7ef8a3f885048d213faa59b2f8", "Carrere Video - Teldec", "USC1012", "M.A.D. (1983) (Carrere Video) (PAL)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
|
@ -187,7 +187,6 @@ static const char* DefProps[DEF_PROPS_SIZE][21] = {
|
|||
{ "0e08cd2c5bcf11c6a7e5a009a7715b6a", "", "", "Boing! (PD) [a1]", "", "New Release", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "0e224ea74310da4e7e2103400eb1b4bf", "Atari, Peter C. Niday, Howard Scott Warshaw", "", "Mind Maze (1984) (Atari) (Prototype)", "", "Prototype", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "0e7e73421606873b544e858c59dc283e", "Digivision", "", "Super Soccer (Digivision)", "AKA RealSports Soccer", "", "", "", "", "", "", "", "", "", "", "", "", "", "YES", "", "" },
|
||||
{ "0e86470791b26292abe1c64545c47985", "Starpath", "", "Party Mix (3 of 3) (1982) (Starpath) (PAL)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "0eebfb60d437796d536039701ec43845", "Fabrizio Zavagli", "", "Cakewalk (Fabrizio Zavagli)", "NTSC Conversion", "Hack", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "0eecb5f58f55de9db4eedb3a0f6b74a8", "Xonox - Beck-Tech", "6210, 06002, 06004, 99002", "Ghost Manor (1983) (Xonox) (4K)", "", "", "", "", "", "", "", "", "", "", "", "", "30", "", "", "", "" },
|
||||
{ "0ef64cdbecccb7049752a3de0b7ade14", "Atari, Joe Decuir, Steve Mayer, Larry Wagner", "CX26163P", "Combat (32 in 1) (1988) (Atari) (PAL)", "", "", "", "", "", "", "", "", "", "", "", "", "39", "256", "", "", "" },
|
||||
|
@ -355,7 +354,6 @@ static const char* DefProps[DEF_PROPS_SIZE][21] = {
|
|||
{ "1d6ed6fe9dfbde32708e8353548cbb80", "Jone Yuan Telephonic Enterprise Co", "", "Super Challenge Baseball (Jone Yuan)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "1da2da7974d2ca73a823523f82f517b3", "Spectravision, Spectravideo, David Lubar", "SA-206", "Challenge of.... Nexar, The (1982) (Spectravision) (PAL)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "1db3bc4601f22cf43be7ce015d74f59a", "", "", "Ship Demo (V 10) (PD)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "1e060a8025512ad2127e3da11e212ccc", "Starpath", "", "Sweat! - Decathalon Game (2 of 2) (1982) (Starpath) (Prototype)", "", "Prototype", "", "", "", "", "", "", "PADDLES", "", "", "", "", "", "", "", "" },
|
||||
{ "1e0ef01e330e5b91387f75f700ccaf8f", "Quelle", "686.561 2 - 781627", "Mein Weg (1983) (Quelle) (PAL)", "AKA Challenge", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "1e1290ea102e12d7ac52820961457e2b", "", "", "Star Wars - The Arcade Game (Parker Bros) (Prototype 121583)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "YES", "", "" },
|
||||
{ "1e1817d9cbcc3ba75043b7db4e6c228f", "", "", "Star Fire (07-10-2002) (MP)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
|
@ -369,7 +367,6 @@ static const char* DefProps[DEF_PROPS_SIZE][21] = {
|
|||
{ "1ec5bef77b91e59313cba205f15b06d7", "", "", "Overhead Adventure Demo 1 (PD)", "", "", "", "", "", "", "", "", "", "", "", "", "64", "", "", "", "" },
|
||||
{ "1ede4f365ce1386d58f121b15a775e24", "Parker Brothers, Dave Hampton, Tom Sloper", "931517", "Q-bert (1983) (Parker Bros) (PAL) [a]", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "1edfbde1dba5498c14dcb80277cd9b99", "", "", "Death Derby (v0006) (2001) (Glenn Saunders) (PD)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "1ee2cfc7d0333b96bd11f7f3ec8ce8bc", "Starpath", "AR-4200", "Escape from the Mindmaster (4 of 4) (1982) (Starpath) (PAL)", "", "Extremely Rare", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "1ee9c1ba95cef2cf987d63f176c54ac3", "Atari - GCC, Mark Ackerman, Glenn Parker", "CX2675, CX2675P", "Ms. Pac-Man (1982) (Atari) (PAL)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "1f21666b8f78b65051b7a609f1d48608", "Ultravision", "1043", "Condor Attack (1982) (Ultravision)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "1f2ae0c70a04c980c838c2cdc412cf45", "Atari - GCC", "CX2698", "Rubik's Cube (1984) (Atari)", "AKA Atari Video Cube", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
|
@ -666,7 +663,6 @@ static const char* DefProps[DEF_PROPS_SIZE][21] = {
|
|||
{ "36a701c60a9f9768d057bc2a83526a80", "", "", "Cube Conquest (Interlaced) (Billy Eno) (PD)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "YES", "", "" },
|
||||
{ "36b20c427975760cb9cf4a47e41369e4", "Atari", "CX26143", "Donkey Kong (1987) (Atari)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "36c29ceee2c151b23a1ad7aa04bd529d", "Atari - GCC, Ava-Robin Cohen", "CX26123", "Jr. Pac-Man (1984) (Atari)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "36c31bb5daeb103f488c66de67ac5075", "Starpath", "", "Party Mix (1 of 3) (1982) (Starpath)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "36c993dc328933e4dd6374a8ffe224f4", "Gameworld", "133-007", "Bermuda Triangle (1983) (Gameworld) (PAL)", "", "", "", "", "", "", "", "", "", "", "", "", "48", "250", "", "", "" },
|
||||
{ "36e47ed74968c365121eab60f48c6517", "Spectravideo - Quelle", "SA-210 - 413.582 8", "Master Builder (1983) (Spectravideo) (PAL)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "36edef446ab4c2395666efc672b92ed0", "Atari - Axlon", "CX26168", "Off the Wall (1989) (Atari) (PAL)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
|
@ -1112,7 +1108,6 @@ static const char* DefProps[DEF_PROPS_SIZE][21] = {
|
|||
{ "5e2495d43b981010304af55efed1e798", "Jone Yuan Telephonic Enterprise Co", "", "Math Gran Prix (Jone Yuan)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "5e2928f089490017e88e9f9e5a881a25", "", "", "Star Fire - Faster Skipping 1 (24-10-2002) (MP)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "5e99aa93d0acc741dcda8752c4e813ce", "", "", "2600 Digital Clock (V b2) (PD)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "5ec73ac7d2ac95ac9530c6d33e713d14", "Starpath", "", "Sweat! - Decathalon Game (1 of 2) (1982) (Starpath) (Prototype)", "", "Prototype", "", "", "", "", "", "", "PADDLES", "", "", "", "", "", "", "", "" },
|
||||
{ "5eeb81292992e057b290a5cd196f155d", "Wizard Video Games, Ed Salvo", "008", "Texas Chainsaw Massacre (1983) (Wizard Video)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "5ef303b9f0aa8cf20720c560e5f9baa1", "Atari, Jim Huether", "CX2629, CX2629P", "Sky Diver (1979) (Atari) (PAL) (4K)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "5f17fef8a64d64d119f8e76c50238762", "", "", "Acid Drop (1992) (Salu) (PAL) [b1]", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
|
@ -1176,7 +1171,6 @@ static const char* DefProps[DEF_PROPS_SIZE][21] = {
|
|||
{ "637efac676ff063f2fbb0abff77c4fa5", "", "", "Noize Maker Demo (PD)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "63811ed69bdbc35c69d8aa7806c3d6e9", "Atari", "CX26163P", "Homerun (32 in 1) (1988) (Atari) (PAL) (4K)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "638cc82ea96f67674595ba9ae05da6c6", "Rainbow Vision - Suntek", "SS-011", "Super Ferrari (Rainbow Vision) (PAL)", "AKA Enduro", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "639ded0c9e53bc3f91defb5dde930286", "Starpath", "", "SuperCharger - Escape from the Mindmaster (4 of 4) (1982) (Starpath) [a1]", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "63a6eda1da30446569ac76211d0f861c", "Activision, David Crane", "AG-001", "Dragster (1980) (Activision) (4K)", "", "", "", "", "", "", "", "", "", "", "", "", "27", "", "", "", "" },
|
||||
{ "63a7445b1d3046d3cdcdbd488dca38d9", "Rob Kudla", "", "Better Space Invaders (1999) (Rob Kudla) (Hack)", "Hack of Space Invaders", "Hack", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "63c5fef3208bb1424d26cf1ab984b40c", "", "", "Analog Clock (V0.1) (20-01-2003) (AD)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
|
@ -1313,7 +1307,6 @@ static const char* DefProps[DEF_PROPS_SIZE][21] = {
|
|||
{ "6e59dd52f88c00d5060eac56c1a0b0d3", "Atari, Bob Smith", "CX2648", "Video Pinball (1981) (Atari) (PAL)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "6e5d5ba193d2540aec2e847aafb2a5fb", "Retroactive", "", "Qb (2.14) (Retroactive) (NTSC)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "YES", "", "" },
|
||||
{ "6e7ed74082f39ad4166c823765a59909", "", "", "Poker Squares (V0.14) (2001) (B. Watson)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "6ed5012793f5ddf4353a48c11ea9b8d3", "Starpath", "", "Party Mix (3 of 3) (1982) (Starpath)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "6efe876168e2d45d4719b6a61355e5fe", "Bit Corporation", "PG207", "Mission 3,000 A.D. (1983) (BitCorp) (PAL)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "YES", "", "" },
|
||||
{ "6f084daf265599f65422ef4173b69bc7", "", "", "Music Kit (V2.0) - Song Player (Paul Slocum)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "YES", "", "" },
|
||||
{ "6f2aaffaaf53d23a28bf6677b86ac0e3", "U.S. Games Corporation, Garry Kitchen - Vidtec", "VC1001", "Space Jockey (1982) (U.S. Games)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
|
@ -1331,7 +1324,7 @@ static const char* DefProps[DEF_PROPS_SIZE][21] = {
|
|||
{ "6fe67f525c39200a798985e419431805", "Atari - GCC, Kevin Osborn", "CX2689, CX2689P", "Kangaroo (1983) (Atari) (PAL)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "6ff4156d10b357f61f09820d03c0f852", "Atari, Larry Kaplan - Sears", "CX2612 - 99804, 49-75103", "Street Racer (1977) (Atari) (4K)", "Uses the Paddle Controllers (swapped)", "", "", "", "", "", "", "", "PADDLES", "PADDLES", "YES", "", "", "", "", "", "" },
|
||||
{ "6ffc95108e5add6f9b8abcaf330be835", "Charles Morgan", "", "TP Bug (Charles Morgan) (Hack)", "Hack of Pac-Man", "Hack", "", "", "", "", "", "", "", "", "", "", "33", "", "", "", "" },
|
||||
{ "700a786471c8a91ec09e2f8e47f14a04", "Activision", "", "Unknown Activision Game #2 (1983) (Activision) (Prototype)", "", "Prototype", "", "", "", "", "", "", "", "", "", "", "37", "", "", "", "" },
|
||||
{ "700a786471c8a91ec09e2f8e47f14a04", "Activision", "", "Unknown Activision Game #2 (Activision) (Prototype)", "", "Prototype", "", "", "", "", "", "", "", "", "", "", "37", "", "", "", "" },
|
||||
{ "703d32062436e4c20c48313dff30e257", "", "", "Moving Maze Demo (PD)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "YES", "", "" },
|
||||
{ "703f0f7af350b0fa29dfe5fbf45d0d75", "Bit Corporation", "P460", "4 Game in One Dark Green (1983) (BitCorp) (PAL)", "Rodeo Champ, Open Sesame, Bobby is Going Home, Festival", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "705fe719179e65b0af328644f3a04900", "Atari, David Crane - Sears", "CX2653 - 6-99823, 49-75111", "Slot Machine (1979) (Atari) (4K) [a]", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
|
@ -1449,7 +1442,6 @@ static const char* DefProps[DEF_PROPS_SIZE][21] = {
|
|||
{ "7a09299f473105ae1ef3ad6f9f2cd807", "Atari, Steve Wright", "CX2616P", "Championship Soccer (1980) (Atari) (PAL)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "7a2af383014f5d810ad26d322823549d", "", "", "FlickerSort Demo (20-04-2002) (MP)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "7a5463545dfb2dcfdafa6074b2f2c15e", "20th Century Fox Video Games, Mark Turmell", "11007", "Turmoil (1982) (20th Century Fox)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "7a63d7ea3f2851bcf04f0bb4ba1a3929", "Starpath", "AR-4200", "Escape from the Mindmaster (3 of 4) (1982) (Starpath)", "", "Extremely Rare", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "7a64a8b727c8215d945e37d565ca95a5", "Atari, Warren Robinett", "CX2606", "Slot Racers (1978) (Atari) (PAL) (4K)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "7a64b5a6e90619c6aacf244cdd7502f8", "Baroque Gaming (Brian Eno)", "", "Warring Worms (Beta 1) (2002) (Baroque Gaming)", "", "Prototype", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "7a7f6ab9215a3a6b5940b8737f116359", "Starpath Corporation, Kevin Norman", "AR-4103", "Killer Satellites (Preview) (1983) (Starpath)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
|
@ -1528,6 +1520,7 @@ static const char* DefProps[DEF_PROPS_SIZE][21] = {
|
|||
{ "7ffc2d80fd49a124808315306d19868e", "Ishido", "", "Domino (Ishido) (PD)", "", "New Release", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "801ba40f3290fc413e8c816c467c765c", "Hozer Video Games", "", "Gunfight 2600 - Westward Ho! (2001) (MP)", "", "New Release", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "804ed85eadf1ce3e93721547cbea7592", "CCE", "", "Fishing Derby (CCE) (4K)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "8055b9c2622136fd91edfea6df642daf", "Activision", "", "Unknown Activision Game #1 (1983) (Activision) (Prototype) (PAL)", "", "Prototype", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "805f9a32ef97ac25f999a25014dc5c23", "SnailSoft", "", "Balthazar (SnailSoft)", "AKA Babylon 5", "", "", "", "", "", "", "", "", "", "", "", "", "", "YES", "", "" },
|
||||
{ "8068e07b484dfd661158b3771d6621ca", "Epyx, Steven A. Baker, Peter Engelbrite", "80561-00286", "California Games (1988) (Epyx) (PAL)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "807a8ff6216b00d52aba2dfea5d8d860", "John Payson", "", "Strat-O-Gems Deluxe", "", "Homebrew", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
|
@ -1817,7 +1810,7 @@ static const char* DefProps[DEF_PROPS_SIZE][21] = {
|
|||
{ "9a25b3cfe2bbb847b66a97282200cca2", "Atari, Steve Jobs, Brad Stewart - Sears", "CX2622 - 6-99813, 49-75107", "Breakout (1978) (Atari) (4K)", "Uses the Paddle Controllers", "", "", "", "", "", "", "", "PADDLES", "", "", "", "", "", "", "", "" },
|
||||
{ "9a4274409216ff09ecde799f2a56ac73", "CCE", "C-801", "Mr. Postman (1983) (CCE) [a]", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "9ab72d3fd2cc1a0c9adb504502579037", "Epyx, Steven A. Baker, Peter Engelbrite", "80561-00286", "California Games (1988) (Epyx)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "9ad362179c2eea4ea115c7640b4b003e", "", "", "Barnstorming (Unknown) (PAL)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "9ad362179c2eea4ea115c7640b4b003e", "", "", "Barnstorming (Unknown) (PAL)", "", "", "", "", "", "", "", "", "", "", "", "NTSC50", "", "", "", "", "" },
|
||||
{ "9ad36e699ef6f45d9eb6c4cf90475c9f", "Imagic, Dennis Koble", "IA3203, IX-010-04", "Atlantis (1982) (Imagic)", "AKA Lost City of Atlantis", "Uncommon", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "9aeb5206c5bf974892a9cc59f1478db3", "Activision, Steve Cartwright", "AX-013", "Barnstorming (1982) (Activision) (8K)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "9b150a42fc788960fbb4cbe250259ee2", "Kroko", "", "3E Bankswitch Test (TIA @ $40)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
|
@ -1876,7 +1869,6 @@ static const char* DefProps[DEF_PROPS_SIZE][21] = {
|
|||
{ "a0297c4788f9e91d43e522f4c561b4ad", "Atari, Gary Stark", "CX26102", "Cookie Monster Munch (1983) (Atari) (PAL)", "Uses Kids/Keypad Controllers", "", "", "", "", "", "", "", "KEYBOARD", "KEYBOARD", "", "", "", "", "", "", "" },
|
||||
{ "a0563dd6d8215c38c488fbbd61435626", "", "", "Ship Demo (V 1501) (PD)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "a0675883f9b09a3595ddd66a6f5d3498", "Telegames", "6057 A227", "Quest for Quintana Roo (1989) (Telegames)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "a075ad332942740c386f4c3814925ece", "Starpath", "AR-4200", "Escape from the Mindmaster (2 of 4) (1982) (Starpath) (PAL)", "", "Extremely Rare", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "a0d502dc8b90b1d7daa5f6effb10d349", "", "", "Demo Image Series #5 - Sam (19-02-2003) (AD)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "a0e2d310e3e98646268200c8f0f08f46", "Atari, Ed Logg, Carol Shaw", "CX2639, CX2639P", "Othello (1981) (Atari) (PAL) [a]", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "a100eff2d7ae61ca2b8e65baf7e2aae8", "David Marli", "", "Muncher (David Marli) (Hack)", "Hack of Pac-Man", "Hack", "", "", "", "", "", "", "", "", "", "", "33", "", "", "", "" },
|
||||
|
@ -1989,7 +1981,6 @@ static const char* DefProps[DEF_PROPS_SIZE][21] = {
|
|||
{ "aab840db22075aa0f6a6b83a597f8890", "Home Vision - Gem Int'l Corp. - R.J.P.G.", "VCS83124", "Racing Car (1983) (Home Vision) (PAL)", "", "", "", "", "", "", "", "YES", "", "", "", "", "", "250", "", "", "" },
|
||||
{ "aacbf0dd6021bc5f4cee6c96ff37e84f", "", "", "Death Derby (v0001) (2001) (Glenn Saunders) (PD)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "aad91be0bf78d33d29758876d999848a", "Activision, David Crane", "AX-018, AX-018-04", "Pitfall! (1981) (Activision) (Prototype)", "", "Prototype", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "aaea37b65db9e492798f0105a6915e96", "Starpath", "", "Party Mix (2 of 3) (1982) (Starpath)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "aafc79ffc32c4c9b2d73c8ada7602cfe", "", "", "Planet Patrol (Unknown) (PAL)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "ab10f2974dee73dab4579f0cab35fca6", "Home Vision - Gem Int'l Corp.", "VCS83117", "Lilly Adventure (1983) (Home Vision) (PAL)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "ab2ea35dcc1098c87455bb8210b018cf", "", "", "Fu Kung! (V0.04 Single Line Resolution) (10-01-2003) (AD)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
|
@ -2343,7 +2334,6 @@ static const char* DefProps[DEF_PROPS_SIZE][21] = {
|
|||
{ "cc03c68b8348b62331964d7a3dbec381", "Jone Yuan Telephonic Enterprise Co", "", "Marauder (Jone Yuan)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "cc12581e079cd18330a89902625b8347", "Dave Neuman", "", "Space Battle (PAL)", "", "Homebrew", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "cc1727dadf82e8fbf152e47d7e88d6c9", "", "", "Death Derby (v0004) (2001) (Glenn Saunders) (PD)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "cc1939e4769d0c157ace326efcfdcf80", "Starpath", "AR-4200", "Escape from the Mindmaster (3 of 4) (1982) (Starpath) (PAL)", "", "Extremely Rare", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "cc2973680c150886cce1ed8693c3aca2", "Quelle", "874.254 6", "Super-Cowboy beim Rodeo (1983) (Quelle) (PAL) (4K)", "AKA Stampede", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "cc3d942c6958bd16b1c602623f59e6e1", "Atari, Bill Aspromonte, John Russell, Michael Sierchio, Robert Zdybel", "CX26114", "Pigs in Space (1983) (Atari) (PAL) [a]", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "cc74ddb45d7bc4d04c2e6f1907416699", "", "", "Colour Display Programme (1997) (Chris Cracknell)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
|
@ -2797,7 +2787,6 @@ static const char* DefProps[DEF_PROPS_SIZE][21] = {
|
|||
{ "f032b2f2d8323404a6b4541f92dd1825", "", "", "Many Blue Bars and Text Demo 3 (PD)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "f047df70d3d08e331122cd2de61d6af8", "Dave Neuman", "", "Space Battle (NTSC)", "", "Homebrew", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "f04ee80011d95798006378643650aaa7", "Atari, Bill Aspromonte, John Russell, Michael Sierchio, Robert Zdybel", "CX26114", "Pigs in Space (1983) (Atari) (Prototype)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "f0536303f49006806bac3aec15738336", "Starpath", "AR-4200", "Escape from the Mindmaster (4 of 4) (1982) (Starpath)", "", "Extremely Rare", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "f0541d2f7cda5ec7bab6d62b6128b823", "Atari, Paul Donaldson", "", "Bionic Breakthrough (1984) (Atari) (Prototype)", "Uses Mindlink Controller (left only)", "Prototype", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "f060826626aac9e0d8cda0282f4b7fc3", "Atari, David Crane - Sears", "CX2605 - 6-99822, 49-75109", "Outlaw (1978) (Atari) (4K)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "f0631c6675033428238408885d7e4fde", "Paul Slocum", "", "Test Cart (2002) (Paul Slocum)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "YES", "", "" },
|
||||
|
@ -2966,7 +2955,7 @@ static const char* DefProps[DEF_PROPS_SIZE][21] = {
|
|||
{ "fc6052438f339aea373bbc999433388a", "Atari, David Crane", "CX2653P", "Slot Machine (1979) (Atari) (PAL)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "fc668a2251dd79cbd903d4fa0e558f96", "", "", "Thrust (V1.1) (2000) (TJ) [a1]", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "fc92d74f073a44bc6e46a3b3fa8256a2", "", "", "Megademo (19xx) (PD)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "fc9c1652fe3a2cade6188f4d3692481f", "", "", "Andrew Davies early notBoulderDash demo (NTSC)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "YES", "", "" },
|
||||
{ "fc9c1652fe3a2cade6188f4d3692481f", "", "", "Andrew Davies early notBoulderDash demo (NTSC)", "", "", "", "", "", "", "", "", "", "", "", "NTSC", "", "", "YES", "", "" },
|
||||
{ "fca4a5be1251927027f2c24774a02160", "Activision, John Van Ryzin", "AZ-036-04", "H.E.R.O. (1984) (Activision)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "fcea12625c071ddc49f4e409f4038c60", "Fabrizio Zavagli", "", "Balls! (16-09-2002) (Fabrizio Zavagli)", "", "Homebrew", "", "", "", "", "", "", "", "", "", "", "", "", "YES", "", "" },
|
||||
{ "fcf8e306f6615f74feba5cb25550038c", "", "", "Blue Dot Demo (PD)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
|
@ -2978,7 +2967,6 @@ static const char* DefProps[DEF_PROPS_SIZE][21] = {
|
|||
{ "fd8b4ee0d57605b35e236e814f706ff1", "Atari - GCC, Mike Feinstein, John Mracek", "CX2673, CX2673P", "Phoenix (1982) (Atari) (PAL) [a]", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "fd9b321cee5fbb32c39ba3ca5d9ec7cf", "Jeffry Johnston", "", "Radial Pong - Version 5 (Jeffry Johnston) (PD)", "", "New Release", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "fdd4995a50395db14f518f63c2d63438", "", "", "Oh No! (Version 3) (18-01-2003) (AD)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "fdf0de38517e0cf7f0885f98ccc95836", "Starpath", "AR-4200", "Escape from the Mindmaster (2 of 4) (1982) (Starpath)", "", "Extremely Rare", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "fdf6680b2b1e8054293a39700a765692", "", "", "Alpha Demo - The Beta Demo 2 (2000) (MP)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "fe0b7f27e3ad50bbf9ff468ee56d553d", "", "", "Lines Demo (Eckhard Stolberg) (PAL) (PD)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "fe0bc4bb92c1c4de7d5706aaa8d8c10d", "", "", "Sprite Demo 2 (PD)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
|
@ -2996,7 +2984,6 @@ static const char* DefProps[DEF_PROPS_SIZE][21] = {
|
|||
{ "ff4ed162386c795b4fb434903295b571", "", "", "Death Derby (v0002) (2001) (Glenn Saunders) (PD)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "ff5a9e340d96df6f5a5b6eb038e923bd", "", "", "Space Shuttle (1983) (Activision) [t1]", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "ff7627207e8aa03730c35c735a82c26c", "Atari, Bob Whitehead", "CX26163P", "Blackjack (32 in 1) (1988) (Atari) (PAL)", "Uses the Paddle Controllers", "", "", "", "", "", "", "", "PADDLES", "", "", "", "63", "", "", "", "" },
|
||||
{ "ff86fc8ffa717bb095e8471638c1c31c", "Starpath", "", "Party Mix (1 of 3) (1982) (Starpath) (PAL)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "ff87d58125ae517eb7b09a0475a1ccdc", "", "", "SCSIcide (Score Hack 1) (24-02-2001) (Joe Grand) (PD)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "ffb1cd548563158ce33f9d10268187e7", "Erik Eid", "", "Euchre (Beta) (NTSC) (12-09-2002) (Erik Eid)", "", "New Release", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "ffc0ff4305dd46b4b459885bd1818e2e", "Barry Laws Jr.", "", "Star Wars - The Battle of Alderaan (Star Strike Hack)", "Hack of Star Strike (Mattel)", "New Release (Hack)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
// See the file "license" for information on usage and redistribution of
|
||||
// this file, and for a DISCLAIMER OF ALL WARRANTIES.
|
||||
//
|
||||
// $Id: OSystem.cxx,v 1.118 2008-03-14 19:34:56 stephena Exp $
|
||||
// $Id: OSystem.cxx,v 1.119 2008-03-23 16:22:40 stephena Exp $
|
||||
//============================================================================
|
||||
|
||||
#include <cassert>
|
||||
|
@ -44,6 +44,7 @@
|
|||
#include "Launcher.hxx"
|
||||
#include "Font.hxx"
|
||||
#include "StellaFont.hxx"
|
||||
#include "StellaLargeFont.hxx"
|
||||
#include "ConsoleFont.hxx"
|
||||
#include "Widget.hxx"
|
||||
#include "Console.hxx"
|
||||
|
@ -166,9 +167,16 @@ bool OSystem::create()
|
|||
queryVideoHardware();
|
||||
|
||||
// Create fonts to draw text
|
||||
// TODO - this should be configurable, and also depend on the minimum
|
||||
// size of the launcher and maximum size of the TIA window
|
||||
// The logic must be taken care of here, so the GUI classes
|
||||
// can just create the interface and not worry about checking
|
||||
myFont = new GUI::Font(GUI::stellaDesc);
|
||||
myLauncherFont = new GUI::Font(GUI::stellaDesc);
|
||||
myConsoleFont = new GUI::Font(GUI::consoleDesc);
|
||||
if(mySettings->getString("launcherfont") == "small")
|
||||
myLauncherFont = new GUI::Font(GUI::stellaDesc);
|
||||
else
|
||||
myLauncherFont = new GUI::Font(GUI::stellaLargeDesc);
|
||||
|
||||
// Create the event handler for the system
|
||||
myEventHandler = new EventHandler(this);
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
// See the file "license" for information on usage and redistribution of
|
||||
// this file, and for a DISCLAIMER OF ALL WARRANTIES.
|
||||
//
|
||||
// $Id: Settings.cxx,v 1.136 2008-03-22 18:17:59 stephena Exp $
|
||||
// $Id: Settings.cxx,v 1.137 2008-03-23 16:22:40 stephena Exp $
|
||||
//============================================================================
|
||||
|
||||
#include <cassert>
|
||||
|
@ -89,8 +89,9 @@ Settings::Settings(OSystem* osystem)
|
|||
setInternal("romviewer", "false");
|
||||
|
||||
// UI-related options
|
||||
setInternal("launcherres", "640x480");
|
||||
setInternal("launcherfont", "small");
|
||||
setInternal("debuggerres", "1030x690");
|
||||
setInternal("launcherres", "400x300");
|
||||
setInternal("uipalette", "0");
|
||||
setInternal("mwheel", "4");
|
||||
|
||||
|
@ -253,6 +254,10 @@ void Settings::validate()
|
|||
s = getString("palette");
|
||||
if(s != "standard" && s != "z26" && s != "user")
|
||||
setInternal("palette", "standard");
|
||||
|
||||
s = getString("launcherfont");
|
||||
if(s != "small" && s != "large")
|
||||
setInternal("launcherfont", "small");
|
||||
}
|
||||
|
||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
|
@ -309,7 +314,7 @@ void Settings::usage()
|
|||
<< " -pspeed <number> Speed of digital emulated paddle movement (1-15)\n"
|
||||
<< " -sa1 <left|right> Stelladaptor 1 emulates specified joystick port\n"
|
||||
<< " -sa2 <left|right> Stelladaptor 2 emulates specified joystick port\n"
|
||||
// << " -romviewer <1|0> Show ROM info viewer in ROM launcher\n"
|
||||
<< " -romviewer <1|0> Show ROM info viewer in ROM launcher\n"
|
||||
<< " -autoslot <1|0> Automatically switch to next save slot when state saving\n"
|
||||
<< " -ssdir <path> The directory to save snapshot files to\n"
|
||||
<< " -sssingle <1|0> Generate single snapshot instead of many\n"
|
||||
|
@ -317,6 +322,7 @@ void Settings::usage()
|
|||
<< " -listrominfo Display contents of stella.pro, one line per ROM entry\n"
|
||||
<< " -rominfo <rom> Display detailed information for the given ROM\n"
|
||||
<< " -launcherres <WxH> The resolution to use in ROM launcher mode\n"
|
||||
<< " -launcherfont <small|large> Use small or large font in the ROM launcher\n"
|
||||
<< " -uipalette <1|2> Used the specified palette for UI elements\n"
|
||||
<< " -mwheel <lines> Number of lines the mouse wheel will scroll in UI\n"
|
||||
<< " -statedir <dir> Directory in which to save state files\n"
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
// See the file "license" for information on usage and redistribution of
|
||||
// this file, and for a DISCLAIMER OF ALL WARRANTIES.
|
||||
//
|
||||
// $Id: TIA.cxx,v 1.86 2008-03-03 18:54:51 stephena Exp $
|
||||
// $Id: TIA.cxx,v 1.87 2008-03-23 16:22:41 stephena Exp $
|
||||
//============================================================================
|
||||
|
||||
#include <cassert>
|
||||
|
@ -241,10 +241,10 @@ void TIA::frameReset()
|
|||
|
||||
// Make sure the height value is reasonable, because we need a certain
|
||||
// minimum amount of space for the onscreen GUI
|
||||
if(myFrameHeight < 200)
|
||||
if(myFrameHeight < 210)
|
||||
{
|
||||
// Values are illegal so reset to default values
|
||||
myFrameHeight = 200;
|
||||
myFrameHeight = 210;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -693,11 +693,6 @@
|
|||
"Cartridge.Name" "RealSports Soccer (1983) (Atari) [a]"
|
||||
""
|
||||
|
||||
"Cartridge.MD5" "08f4dc6f118f7c98e2406c180c08e78e"
|
||||
"Cartridge.Manufacturer" "Starpath"
|
||||
"Cartridge.Name" "Party Mix (2 of 3) (1982) (Starpath) (PAL)"
|
||||
""
|
||||
|
||||
"Cartridge.MD5" "0c7926d660f903a2d6910c254660c32c"
|
||||
"Cartridge.Manufacturer" "Atari, Larry Kaplan"
|
||||
"Cartridge.ModelNo" "CX2602, CX2602P"
|
||||
|
@ -1118,11 +1113,6 @@
|
|||
"Display.Phosphor" "YES"
|
||||
""
|
||||
|
||||
"Cartridge.MD5" "0e86470791b26292abe1c64545c47985"
|
||||
"Cartridge.Manufacturer" "Starpath"
|
||||
"Cartridge.Name" "Party Mix (3 of 3) (1982) (Starpath) (PAL)"
|
||||
""
|
||||
|
||||
"Cartridge.MD5" "0ef64cdbecccb7049752a3de0b7ade14"
|
||||
"Cartridge.Manufacturer" "Atari, Joe Decuir, Steve Mayer, Larry Wagner"
|
||||
"Cartridge.ModelNo" "CX26163P"
|
||||
|
@ -2111,13 +2101,6 @@
|
|||
"Cartridge.Name" "Ship Demo (V 10) (PD)"
|
||||
""
|
||||
|
||||
"Cartridge.MD5" "1e060a8025512ad2127e3da11e212ccc"
|
||||
"Cartridge.Manufacturer" "Starpath"
|
||||
"Cartridge.Name" "Sweat! - Decathalon Game (2 of 2) (1982) (Starpath) (Prototype)"
|
||||
"Cartridge.Rarity" "Prototype"
|
||||
"Controller.Left" "PADDLES"
|
||||
""
|
||||
|
||||
"Cartridge.MD5" "1e1817d9cbcc3ba75043b7db4e6c228f"
|
||||
"Cartridge.Name" "Star Fire (07-10-2002) (MP)"
|
||||
""
|
||||
|
@ -2177,13 +2160,6 @@
|
|||
"Cartridge.Name" "Q-bert (1983) (Parker Bros) (PAL) [a]"
|
||||
""
|
||||
|
||||
"Cartridge.MD5" "1ee2cfc7d0333b96bd11f7f3ec8ce8bc"
|
||||
"Cartridge.Manufacturer" "Starpath"
|
||||
"Cartridge.ModelNo" "AR-4200"
|
||||
"Cartridge.Name" "Escape from the Mindmaster (4 of 4) (1982) (Starpath) (PAL)"
|
||||
"Cartridge.Rarity" "Extremely Rare"
|
||||
""
|
||||
|
||||
"Cartridge.MD5" "1ee9c1ba95cef2cf987d63f176c54ac3"
|
||||
"Cartridge.Manufacturer" "Atari - GCC, Mark Ackerman, Glenn Parker"
|
||||
"Cartridge.ModelNo" "CX2675, CX2675P"
|
||||
|
@ -3990,11 +3966,6 @@
|
|||
"Display.Height" "250"
|
||||
""
|
||||
|
||||
"Cartridge.MD5" "36c31bb5daeb103f488c66de67ac5075"
|
||||
"Cartridge.Manufacturer" "Starpath"
|
||||
"Cartridge.Name" "Party Mix (1 of 3) (1982) (Starpath)"
|
||||
""
|
||||
|
||||
"Cartridge.MD5" "36edef446ab4c2395666efc672b92ed0"
|
||||
"Cartridge.Manufacturer" "Atari - Axlon"
|
||||
"Cartridge.ModelNo" "CX26168"
|
||||
|
@ -6621,13 +6592,6 @@
|
|||
"Cartridge.Name" "Texas Chainsaw Massacre (1983) (Wizard Video)"
|
||||
""
|
||||
|
||||
"Cartridge.MD5" "5ec73ac7d2ac95ac9530c6d33e713d14"
|
||||
"Cartridge.Manufacturer" "Starpath"
|
||||
"Cartridge.Name" "Sweat! - Decathalon Game (1 of 2) (1982) (Starpath) (Prototype)"
|
||||
"Cartridge.Rarity" "Prototype"
|
||||
"Controller.Left" "PADDLES"
|
||||
""
|
||||
|
||||
"Cartridge.MD5" "5ef303b9f0aa8cf20720c560e5f9baa1"
|
||||
"Cartridge.Manufacturer" "Atari, Jim Huether"
|
||||
"Cartridge.ModelNo" "CX2629, CX2629P"
|
||||
|
@ -7002,11 +6966,6 @@
|
|||
"Cartridge.Name" "Homerun (32 in 1) (1988) (Atari) (PAL) (4K)"
|
||||
""
|
||||
|
||||
"Cartridge.MD5" "639ded0c9e53bc3f91defb5dde930286"
|
||||
"Cartridge.Manufacturer" "Starpath"
|
||||
"Cartridge.Name" "SuperCharger - Escape from the Mindmaster (4 of 4) (1982) (Starpath) [a1]"
|
||||
""
|
||||
|
||||
"Cartridge.MD5" "6c449db9bbbd90972ad1932d6af87330"
|
||||
"Cartridge.Name" "20 Sprites at Once Demo 3 (PD)"
|
||||
""
|
||||
|
@ -7834,11 +7793,6 @@
|
|||
"Cartridge.Name" "Video Pinball (1981) (Atari) (PAL)"
|
||||
""
|
||||
|
||||
"Cartridge.MD5" "6ed5012793f5ddf4353a48c11ea9b8d3"
|
||||
"Cartridge.Manufacturer" "Starpath"
|
||||
"Cartridge.Name" "Party Mix (3 of 3) (1982) (Starpath)"
|
||||
""
|
||||
|
||||
"Cartridge.MD5" "6f084daf265599f65422ef4173b69bc7"
|
||||
"Cartridge.Name" "Music Kit (V2.0) - Song Player (Paul Slocum)"
|
||||
"Display.Phosphor" "YES"
|
||||
|
@ -7928,7 +7882,7 @@
|
|||
|
||||
"Cartridge.MD5" "700a786471c8a91ec09e2f8e47f14a04"
|
||||
"Cartridge.Manufacturer" "Activision"
|
||||
"Cartridge.Name" "Unknown Activision Game #2 (1983) (Activision) (Prototype)"
|
||||
"Cartridge.Name" "Unknown Activision Game #2 (Activision) (Prototype)"
|
||||
"Cartridge.Rarity" "Prototype"
|
||||
"Display.YStart" "37"
|
||||
""
|
||||
|
@ -8615,13 +8569,6 @@
|
|||
"Cartridge.Name" "Tie-Fighters (MP)"
|
||||
""
|
||||
|
||||
"Cartridge.MD5" "7a63d7ea3f2851bcf04f0bb4ba1a3929"
|
||||
"Cartridge.Manufacturer" "Starpath"
|
||||
"Cartridge.ModelNo" "AR-4200"
|
||||
"Cartridge.Name" "Escape from the Mindmaster (3 of 4) (1982) (Starpath)"
|
||||
"Cartridge.Rarity" "Extremely Rare"
|
||||
""
|
||||
|
||||
"Cartridge.MD5" "7a2af383014f5d810ad26d322823549d"
|
||||
"Cartridge.Name" "FlickerSort Demo (20-04-2002) (MP)"
|
||||
""
|
||||
|
@ -10712,6 +10659,7 @@
|
|||
|
||||
"Cartridge.MD5" "9ad362179c2eea4ea115c7640b4b003e"
|
||||
"Cartridge.Name" "Barnstorming (Unknown) (PAL)"
|
||||
"Display.Format" "NTSC50"
|
||||
""
|
||||
|
||||
"Cartridge.MD5" "9a25b3cfe2bbb847b66a97282200cca2"
|
||||
|
@ -11189,13 +11137,6 @@
|
|||
"Cartridge.Name" "Demo Image Series #5 - Sam (19-02-2003) (AD)"
|
||||
""
|
||||
|
||||
"Cartridge.MD5" "a075ad332942740c386f4c3814925ece"
|
||||
"Cartridge.Manufacturer" "Starpath"
|
||||
"Cartridge.ModelNo" "AR-4200"
|
||||
"Cartridge.Name" "Escape from the Mindmaster (2 of 4) (1982) (Starpath) (PAL)"
|
||||
"Cartridge.Rarity" "Extremely Rare"
|
||||
""
|
||||
|
||||
"Cartridge.MD5" "a0675883f9b09a3595ddd66a6f5d3498"
|
||||
"Cartridge.Manufacturer" "Telegames"
|
||||
"Cartridge.ModelNo" "6057 A227"
|
||||
|
@ -11870,11 +11811,6 @@
|
|||
"Cartridge.Name" "Planet Patrol (Unknown) (PAL)"
|
||||
""
|
||||
|
||||
"Cartridge.MD5" "aaea37b65db9e492798f0105a6915e96"
|
||||
"Cartridge.Manufacturer" "Starpath"
|
||||
"Cartridge.Name" "Party Mix (2 of 3) (1982) (Starpath)"
|
||||
""
|
||||
|
||||
"Cartridge.MD5" "ab301d3d7f2f4fe3fdd8a3540b7a74f5"
|
||||
"Cartridge.Manufacturer" "Jone Yuan Telephonic Enterprise Co"
|
||||
"Cartridge.Name" "IQ-180 (Jone Yuan)"
|
||||
|
@ -14001,13 +13937,6 @@
|
|||
"Cartridge.Name" "Marauder (Jone Yuan)"
|
||||
""
|
||||
|
||||
"Cartridge.MD5" "cc1939e4769d0c157ace326efcfdcf80"
|
||||
"Cartridge.Manufacturer" "Starpath"
|
||||
"Cartridge.ModelNo" "AR-4200"
|
||||
"Cartridge.Name" "Escape from the Mindmaster (3 of 4) (1982) (Starpath) (PAL)"
|
||||
"Cartridge.Rarity" "Extremely Rare"
|
||||
""
|
||||
|
||||
"Cartridge.MD5" "cc3d942c6958bd16b1c602623f59e6e1"
|
||||
"Cartridge.Manufacturer" "Atari, Bill Aspromonte, John Russell, Michael Sierchio, Robert Zdybel"
|
||||
"Cartridge.ModelNo" "CX26114"
|
||||
|
@ -16647,13 +16576,6 @@
|
|||
"Cartridge.Name" "Strategy X (1983) (Gakken) (PAL)"
|
||||
""
|
||||
|
||||
"Cartridge.MD5" "f0536303f49006806bac3aec15738336"
|
||||
"Cartridge.Manufacturer" "Starpath"
|
||||
"Cartridge.ModelNo" "AR-4200"
|
||||
"Cartridge.Name" "Escape from the Mindmaster (4 of 4) (1982) (Starpath)"
|
||||
"Cartridge.Rarity" "Extremely Rare"
|
||||
""
|
||||
|
||||
"Cartridge.MD5" "f032b2f2d8323404a6b4541f92dd1825"
|
||||
"Cartridge.Name" "Many Blue Bars and Text Demo 3 (PD)"
|
||||
""
|
||||
|
@ -17685,6 +17607,7 @@
|
|||
|
||||
"Cartridge.MD5" "fc9c1652fe3a2cade6188f4d3692481f"
|
||||
"Cartridge.Name" "Andrew Davies early notBoulderDash demo (NTSC)"
|
||||
"Display.Format" "NTSC"
|
||||
"Display.Phosphor" "YES"
|
||||
""
|
||||
|
||||
|
@ -17720,13 +17643,6 @@
|
|||
"Cartridge.Name" "Alpha Demo - The Beta Demo 2 (2000) (MP)"
|
||||
""
|
||||
|
||||
"Cartridge.MD5" "fdf0de38517e0cf7f0885f98ccc95836"
|
||||
"Cartridge.Manufacturer" "Starpath"
|
||||
"Cartridge.ModelNo" "AR-4200"
|
||||
"Cartridge.Name" "Escape from the Mindmaster (2 of 4) (1982) (Starpath)"
|
||||
"Cartridge.Rarity" "Extremely Rare"
|
||||
""
|
||||
|
||||
"Cartridge.MD5" "fdd4995a50395db14f518f63c2d63438"
|
||||
"Cartridge.Name" "Oh No! (Version 3) (18-01-2003) (AD)"
|
||||
""
|
||||
|
@ -17855,11 +17771,6 @@
|
|||
"Cartridge.Name" "SCSIcide (Score Hack 1) (24-02-2001) (Joe Grand) (PD)"
|
||||
""
|
||||
|
||||
"Cartridge.MD5" "ff86fc8ffa717bb095e8471638c1c31c"
|
||||
"Cartridge.Manufacturer" "Starpath"
|
||||
"Cartridge.Name" "Party Mix (1 of 3) (1982) (Starpath) (PAL)"
|
||||
""
|
||||
|
||||
"Cartridge.MD5" "ffe51989ba6da2c6ae5a12d277862e16"
|
||||
"Cartridge.Manufacturer" "Atari - Sears"
|
||||
"Cartridge.ModelNo" "CX2627 - 6-99841"
|
||||
|
@ -17885,3 +17796,14 @@
|
|||
"Display.YStart" "28"
|
||||
""
|
||||
|
||||
"Cartridge.MD5" "06b0194ce992584c365278e0d7323279"
|
||||
"Cartridge.Manufacturer" "Activision"
|
||||
"Cartridge.Name" "Unknown Activision Game #2 (Prototype) (PAL)"
|
||||
"Cartridge.Rarity" "Prototype"
|
||||
""
|
||||
|
||||
"Cartridge.MD5" "8055b9c2622136fd91edfea6df642daf"
|
||||
"Cartridge.Manufacturer" "Activision"
|
||||
"Cartridge.Name" "Unknown Activision Game #1 (1983) (Activision) (Prototype) (PAL)"
|
||||
"Cartridge.Rarity" "Prototype"
|
||||
""
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
// See the file "license" for information on usage and redistribution of
|
||||
// this file, and for a DISCLAIMER OF ALL WARRANTIES.
|
||||
//
|
||||
// $Id: AboutDialog.cxx,v 1.23 2008-02-06 13:45:23 stephena Exp $
|
||||
// $Id: AboutDialog.cxx,v 1.24 2008-03-23 16:22:45 stephena Exp $
|
||||
//
|
||||
// Based on code from ScummVM - Scumm Interpreter
|
||||
// Copyright (C) 2002-2004 The ScummVM project
|
||||
|
@ -92,7 +92,7 @@ void AboutDialog::updateStrings(int page, int lines, string& title, string* &dsc
|
|||
ADD_ATEXT("\\CA multi-platform Atari 2600 VCS emulator");
|
||||
ADD_ATEXT(string("\\C\\c2") + instance()->features());
|
||||
ADD_ALINE;
|
||||
ADD_ATEXT("\\CCopyright (C) 1995-2007 The Stella team");
|
||||
ADD_ATEXT("\\CCopyright (C) 1995-2008 The Stella team");
|
||||
ADD_ATEXT("\\Chttp://stella.sourceforge.net");
|
||||
ADD_ALINE;
|
||||
ADD_ATEXT("Stella is free software released under the GNU GPL");
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
// See the file "license" for information on usage and redistribution of
|
||||
// this file, and for a DISCLAIMER OF ALL WARRANTIES.
|
||||
//
|
||||
// $Id: AudioDialog.cxx,v 1.26 2008-02-06 13:45:23 stephena Exp $
|
||||
// $Id: AudioDialog.cxx,v 1.27 2008-03-23 16:22:46 stephena Exp $
|
||||
//
|
||||
// Based on code from ScummVM - Scumm Interpreter
|
||||
// Copyright (C) 2002-2004 The ScummVM project
|
||||
|
@ -40,24 +40,31 @@ AudioDialog::AudioDialog(OSystem* osystem, DialogContainer* parent,
|
|||
const GUI::Font& font, int x, int y, int w, int h)
|
||||
: Dialog(osystem, parent, x, y, w, h)
|
||||
{
|
||||
const int lineHeight = font.getLineHeight(),
|
||||
fontHeight = font.getFontHeight();
|
||||
const int lineHeight = font.getLineHeight(),
|
||||
fontWidth = font.getMaxCharWidth(),
|
||||
fontHeight = font.getFontHeight(),
|
||||
buttonWidth = font.getStringWidth("Defaults") + 20,
|
||||
buttonHeight = font.getLineHeight() + 4;
|
||||
int xpos, ypos;
|
||||
int lwidth = font.getStringWidth("Fragment Size: "),
|
||||
pwidth = font.getStringWidth("4096");
|
||||
WidgetArray wid;
|
||||
|
||||
// Volume
|
||||
xpos = (w - lwidth - pwidth - 40) / 2; ypos = 10;
|
||||
// Set real dimensions
|
||||
// _w = 35 * fontWidth + 10;
|
||||
// _h = 8 * (lineHeight + 4) + 10;
|
||||
|
||||
myVolumeSlider = new SliderWidget(this, font, xpos, ypos, 30, lineHeight,
|
||||
// Volume
|
||||
xpos = 3 * fontWidth; ypos = 10;
|
||||
|
||||
myVolumeSlider = new SliderWidget(this, font, xpos, ypos, 6*fontWidth, lineHeight,
|
||||
"Volume: ", lwidth, kVolumeChanged);
|
||||
myVolumeSlider->setMinValue(1); myVolumeSlider->setMaxValue(100);
|
||||
wid.push_back(myVolumeSlider);
|
||||
myVolumeLabel = new StaticTextWidget(this, font,
|
||||
xpos + myVolumeSlider->getWidth() + 4,
|
||||
ypos + 1,
|
||||
15, fontHeight, "", kTextAlignLeft);
|
||||
3*fontWidth, fontHeight, "", kTextAlignLeft);
|
||||
|
||||
myVolumeLabel->setFlags(WIDGET_CLEARBG);
|
||||
ypos += lineHeight + 4;
|
||||
|
@ -113,23 +120,10 @@ AudioDialog::AudioDialog(OSystem* osystem, DialogContainer* parent,
|
|||
|
||||
// Add Defaults, OK and Cancel buttons
|
||||
ButtonWidget* b;
|
||||
b = addButton(font, 10, _h - 24, "Defaults", kDefaultsCmd);
|
||||
b = new ButtonWidget(this, font, 10, _h - buttonHeight - 10,
|
||||
buttonWidth, buttonHeight, "Defaults", kDefaultsCmd);
|
||||
wid.push_back(b);
|
||||
#ifndef MAC_OSX
|
||||
b = addButton(font, _w - 2 * (kButtonWidth + 7), _h - 24, "OK", kOKCmd);
|
||||
wid.push_back(b);
|
||||
addOKWidget(b);
|
||||
b = addButton(font, _w - (kButtonWidth + 10), _h - 24, "Cancel", kCloseCmd);
|
||||
wid.push_back(b);
|
||||
addCancelWidget(b);
|
||||
#else
|
||||
b = addButton(font, _w - 2 * (kButtonWidth + 7), _h - 24, "Cancel", kCloseCmd);
|
||||
wid.push_back(b);
|
||||
addCancelWidget(b);
|
||||
b = addButton(font, _w - (kButtonWidth + 10), _h - 24, "OK", kOKCmd);
|
||||
wid.push_back(b);
|
||||
addOKWidget(b);
|
||||
#endif
|
||||
addOKCancelBGroup(wid, font);
|
||||
|
||||
addToFocusList(wid);
|
||||
}
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
// See the file "license" for information on usage and redistribution of
|
||||
// this file, and for a DISCLAIMER OF ALL WARRANTIES.
|
||||
//
|
||||
// $Id: BrowserDialog.cxx,v 1.29 2008-02-06 13:45:23 stephena Exp $
|
||||
// $Id: BrowserDialog.cxx,v 1.30 2008-03-23 16:22:46 stephena Exp $
|
||||
//
|
||||
// Based on code from ScummVM - Scumm Interpreter
|
||||
// Copyright (C) 2002-2004 The ScummVM project
|
||||
|
@ -48,12 +48,17 @@ BrowserDialog::BrowserDialog(GuiObject* boss, const GUI::Font& font,
|
|||
_nodeList(NULL),
|
||||
_mode(AbstractFilesystemNode::kListDirectoriesOnly)
|
||||
{
|
||||
const int lineHeight = font.getLineHeight(),
|
||||
bwidth = font.getStringWidth("Cancel") + 20,
|
||||
bheight = font.getLineHeight() + 4;
|
||||
const int lineHeight = font.getLineHeight(),
|
||||
buttonWidth = font.getStringWidth("Defaults") + 20,
|
||||
buttonHeight = font.getLineHeight() + 4;
|
||||
int xpos, ypos;
|
||||
ButtonWidget* b;
|
||||
|
||||
// Set real dimensions
|
||||
// This is one dialog that can take as much space as is available
|
||||
// _w = _DLG_MIN_SWIDTH - 30;
|
||||
// _h = _DLG_MIN_SHEIGHT - 30;
|
||||
|
||||
xpos = 10; ypos = 4;
|
||||
_title = new StaticTextWidget(this, font, xpos, ypos,
|
||||
_w - 2 * xpos, lineHeight,
|
||||
|
@ -68,35 +73,31 @@ BrowserDialog::BrowserDialog(GuiObject* boss, const GUI::Font& font,
|
|||
// Add file list
|
||||
ypos += lineHeight;
|
||||
_fileList = new StringListWidget(this, font, xpos, ypos,
|
||||
_w - 2 * xpos, _h - bheight - ypos - 15);
|
||||
_w - 2 * xpos, _h - buttonHeight - ypos - 20);
|
||||
_fileList->setNumberingMode(kListNumberingOff);
|
||||
_fileList->setEditable(false);
|
||||
|
||||
// Buttons
|
||||
xpos = 10; ypos = _h - bheight - 8;
|
||||
b = _goUpButton = new ButtonWidget(this, font, xpos, ypos, bwidth, bheight,
|
||||
"Go up", kGoUpCmd);
|
||||
addFocusWidget(b);
|
||||
_goUpButton = new ButtonWidget(this, font, 10, _h - buttonHeight - 10,
|
||||
buttonWidth, buttonHeight, "Go up", kGoUpCmd);
|
||||
addFocusWidget(_goUpButton);
|
||||
|
||||
#ifndef MAC_OSX
|
||||
xpos = _w - 2 *(bwidth + 10);
|
||||
b = new ButtonWidget(this, font, xpos, ypos, bwidth, bheight, "Choose",
|
||||
kChooseCmd);
|
||||
b = new ButtonWidget(this, font, _w - 2 * (buttonWidth + 7), _h - buttonHeight - 10,
|
||||
buttonWidth, buttonHeight, "Choose", kChooseCmd);
|
||||
addFocusWidget(b);
|
||||
addOKWidget(b);
|
||||
xpos += bwidth + 10;
|
||||
b = new ButtonWidget(this, font, xpos, ypos, bwidth, bheight, "Cancel",
|
||||
kCloseCmd);
|
||||
b = new ButtonWidget(this, font, _w - (buttonWidth + 10), _h - buttonHeight - 10,
|
||||
buttonWidth, buttonHeight, "Cancel", kCloseCmd);
|
||||
addFocusWidget(b);
|
||||
addCancelWidget(b);
|
||||
#else
|
||||
xpos = _w - 2 *(bwidth + 10); ypos = _h - bheight - 8;
|
||||
b = new ButtonWidget(this, font, xpos, ypos, bwidth, bheight, "Cancel",
|
||||
kCloseCmd);
|
||||
b = new ButtonWidget(this, font, _w - 2 * (buttonWidth + 7), _h - buttonHeight - 10,
|
||||
buttonWidth, buttonHeight, "Cancel", kCloseCmd);
|
||||
addFocusWidget(b);
|
||||
addCancelWidget(b);
|
||||
xpos += bwidth + 10;
|
||||
b = new ButtonWidget(this, font, xpos, ypos, bwidth, bheight, "Choose",
|
||||
kChooseCmd);
|
||||
b = new ButtonWidget(this, font, _w - (buttonWidth + 10), _h - buttonHeight - 10,
|
||||
buttonWidth, buttonHeight, "Choose", kChooseCmd);
|
||||
addFocusWidget(b);
|
||||
addOKWidget(b);
|
||||
#endif
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
// See the file "license" for information on usage and redistribution of
|
||||
// this file, and for a DISCLAIMER OF ALL WARRANTIES.
|
||||
//
|
||||
// $Id: ConsoleFont.hxx,v 1.7 2008-02-06 13:45:23 stephena Exp $
|
||||
// $Id: ConsoleFont.hxx,v 1.8 2008-03-23 16:22:46 stephena Exp $
|
||||
//
|
||||
// Based on code from ScummVM - Scumm Interpreter
|
||||
// Copyright (C) 2002-2004 The ScummVM project
|
||||
|
@ -3116,7 +3116,7 @@ static const uInt16 _console_font_bits[] = {
|
|||
};
|
||||
|
||||
/* Character->glyph mapping. */
|
||||
static const uInt16 _console_sysfont_offset[] = {
|
||||
static const uInt32 _console_sysfont_offset[] = {
|
||||
13, /* (0x00) */
|
||||
0, /* (0x01) */
|
||||
0, /* (0x02) */
|
||||
|
@ -3250,6 +3250,7 @@ static const FontDesc consoleDesc = {
|
|||
"8x13",
|
||||
8,
|
||||
13,
|
||||
8, 13, 0, -1,
|
||||
11,
|
||||
0,
|
||||
127,
|
||||
|
@ -3257,6 +3258,7 @@ static const FontDesc consoleDesc = {
|
|||
_console_sysfont_offset, /* encode table */
|
||||
0, /* fixed width*/
|
||||
0,
|
||||
0,
|
||||
sizeof(_console_font_bits)/sizeof(uInt16)
|
||||
};
|
||||
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
// See the file "license" for information on usage and redistribution of
|
||||
// this file, and for a DISCLAIMER OF ALL WARRANTIES.
|
||||
//
|
||||
// $Id: Dialog.cxx,v 1.58 2008-02-19 12:33:07 stephena Exp $
|
||||
// $Id: Dialog.cxx,v 1.59 2008-03-23 16:22:46 stephena Exp $
|
||||
//
|
||||
// Based on code from ScummVM - Scumm Interpreter
|
||||
// Copyright (C) 2002-2004 The ScummVM project
|
||||
|
@ -544,10 +544,39 @@ Widget* Dialog::findWidget(int x, int y)
|
|||
return Widget::findWidgetInChain(_firstWidget, x, y);
|
||||
}
|
||||
|
||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
void Dialog::addOKCancelBGroup(WidgetArray& wid, const GUI::Font& font)
|
||||
{
|
||||
int buttonWidth = font.getStringWidth("Cancel") + 15;
|
||||
int buttonHeight = font.getLineHeight() + 4;
|
||||
#ifndef MAC_OSX
|
||||
ButtonWidget* b;
|
||||
b = new ButtonWidget(this, font, _w - 2 * (buttonWidth + 7), _h - buttonHeight - 10,
|
||||
buttonWidth, buttonHeight, "OK", kOKCmd);
|
||||
wid.push_back(b);
|
||||
addOKWidget(b);
|
||||
b = new ButtonWidget(this, font, _w - (buttonWidth + 10), _h - buttonHeight - 10,
|
||||
buttonWidth, buttonHeight, "Cancel", kCloseCmd);
|
||||
wid.push_back(b);
|
||||
addCancelWidget(b);
|
||||
#else
|
||||
b = new ButtonWidget(this, font, _w - 2 * (buttonWidth + 7), _h - buttonHeight - 10,
|
||||
buttonWidth, buttonHeight, "Cancel", kCloseCmd);
|
||||
wid.push_back(b);
|
||||
addCancelWidget(b);
|
||||
b = new ButtonWidget(this, font, _w - (buttonWidth + 10), _h - buttonHeight - 10,
|
||||
buttonWidth, buttonHeight, "OK", kOKCmd);
|
||||
wid.push_back(b);
|
||||
addOKWidget(b);
|
||||
#endif
|
||||
}
|
||||
|
||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
ButtonWidget* Dialog::addButton(const GUI::Font& font, int x, int y,
|
||||
const string& label, int cmd)
|
||||
{
|
||||
// FIXME - this is deprecated, and the UI code should be refactored
|
||||
// to remove all references to it
|
||||
#if 0
|
||||
const int w = 6 * font.getMaxCharWidth(),
|
||||
h = font.getFontHeight() + 6;
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
// See the file "license" for information on usage and redistribution of
|
||||
// this file, and for a DISCLAIMER OF ALL WARRANTIES.
|
||||
//
|
||||
// $Id: Dialog.hxx,v 1.36 2008-02-06 13:45:23 stephena Exp $
|
||||
// $Id: Dialog.hxx,v 1.37 2008-03-23 16:22:46 stephena Exp $
|
||||
//
|
||||
// Based on code from ScummVM - Scumm Interpreter
|
||||
// Copyright (C) 2002-2004 The ScummVM project
|
||||
|
@ -32,11 +32,21 @@ class TabWidget;
|
|||
|
||||
#include "bspf.hxx"
|
||||
|
||||
/*
|
||||
#ifdef SMALL_SCREEN
|
||||
#define _DLG_MIN_SWIDTH 320
|
||||
#define _DLG_MIN_SHEIGHT 210
|
||||
#else
|
||||
#define _DLG_MIN_SWIDTH 640
|
||||
#define _DLG_MIN_SHEIGHT 420
|
||||
#endif
|
||||
*/
|
||||
|
||||
/**
|
||||
This is the base class for all dialog boxes.
|
||||
|
||||
@author Stephen Anthony
|
||||
@version $Id: Dialog.hxx,v 1.36 2008-02-06 13:45:23 stephena Exp $
|
||||
@version $Id: Dialog.hxx,v 1.37 2008-03-23 16:22:46 stephena Exp $
|
||||
*/
|
||||
class Dialog : public GuiObject
|
||||
{
|
||||
|
@ -96,6 +106,8 @@ class Dialog : public GuiObject
|
|||
ButtonWidget* addButton(const GUI::Font& font, int x, int y,
|
||||
const string& label = "", int cmd = 0);
|
||||
|
||||
void addOKCancelBGroup(WidgetArray& wid, const GUI::Font& font);
|
||||
|
||||
void setResult(int result) { _result = result; }
|
||||
int getResult() const { return _result; }
|
||||
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
// See the file "license" for information on usage and redistribution of
|
||||
// this file, and for a DISCLAIMER OF ALL WARRANTIES.
|
||||
//
|
||||
// $Id: EventMappingWidget.cxx,v 1.22 2008-02-06 13:45:23 stephena Exp $
|
||||
// $Id: EventMappingWidget.cxx,v 1.23 2008-03-23 16:22:46 stephena Exp $
|
||||
//
|
||||
// Based on code from ScummVM - Scumm Interpreter
|
||||
// Copyright (C) 2002-2004 The ScummVM project
|
||||
|
@ -42,12 +42,14 @@ EventMappingWidget::EventMappingWidget(GuiObject* boss, const GUI::Font& font,
|
|||
myRemapStatus(false),
|
||||
myFirstTime(true)
|
||||
{
|
||||
const int fontHeight = font.getFontHeight(),
|
||||
lineHeight = font.getLineHeight();
|
||||
const int fontHeight = font.getFontHeight(),
|
||||
lineHeight = font.getLineHeight(),
|
||||
buttonWidth = font.getStringWidth("Defaults") + 10,
|
||||
buttonHeight = font.getLineHeight() + 4;
|
||||
int xpos = 5, ypos = 5;
|
||||
|
||||
myActionsList = new StringListWidget(boss, font, xpos, ypos,
|
||||
_w - 70, _h - 3*lineHeight);
|
||||
_w - buttonWidth - 20, _h - 3*lineHeight);
|
||||
myActionsList->setTarget(this);
|
||||
myActionsList->setNumberingMode(kListNumberingOff);
|
||||
myActionsList->setEditable(false);
|
||||
|
@ -56,23 +58,27 @@ EventMappingWidget::EventMappingWidget(GuiObject* boss, const GUI::Font& font,
|
|||
|
||||
// Add remap, erase, cancel and default buttons
|
||||
xpos += myActionsList->getWidth() + 15; ypos += 5;
|
||||
myMapButton = new ButtonWidget(boss, font, xpos, ypos, 50, 16,
|
||||
myMapButton = new ButtonWidget(boss, font, xpos, ypos,
|
||||
buttonWidth, buttonHeight,
|
||||
"Map", kStartMapCmd);
|
||||
myMapButton->setTarget(this);
|
||||
addFocusWidget(myMapButton);
|
||||
ypos += 20;
|
||||
myEraseButton = new ButtonWidget(boss, font, xpos, ypos, 50, 16,
|
||||
ypos += lineHeight + 10;
|
||||
myEraseButton = new ButtonWidget(boss, font, xpos, ypos,
|
||||
buttonWidth, buttonHeight,
|
||||
"Erase", kEraseCmd);
|
||||
myEraseButton->setTarget(this);
|
||||
addFocusWidget(myEraseButton);
|
||||
ypos += 20;
|
||||
myCancelMapButton = new ButtonWidget(boss, font, xpos, ypos, 50, 16,
|
||||
ypos += lineHeight + 10;
|
||||
myCancelMapButton = new ButtonWidget(boss, font, xpos, ypos,
|
||||
buttonWidth, buttonHeight,
|
||||
"Cancel", kStopMapCmd);
|
||||
myCancelMapButton->setTarget(this);
|
||||
myCancelMapButton->clearFlags(WIDGET_ENABLED);
|
||||
addFocusWidget(myCancelMapButton);
|
||||
ypos += 30;
|
||||
myDefaultsButton = new ButtonWidget(boss, font, xpos, ypos, 50, 16,
|
||||
ypos += lineHeight + 30;
|
||||
myDefaultsButton = new ButtonWidget(boss, font, xpos, ypos,
|
||||
buttonWidth, buttonHeight,
|
||||
"Defaults", kDefaultsCmd);
|
||||
myDefaultsButton->setTarget(this);
|
||||
addFocusWidget(myDefaultsButton);
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
// See the file "license" for information on usage and redistribution of
|
||||
// this file, and for a DISCLAIMER OF ALL WARRANTIES.
|
||||
//
|
||||
// $Id: FileSnapDialog.cxx,v 1.15 2008-03-12 19:42:36 stephena Exp $
|
||||
// $Id: FileSnapDialog.cxx,v 1.16 2008-03-23 16:22:46 stephena Exp $
|
||||
//
|
||||
// Based on code from ScummVM - Scumm Interpreter
|
||||
// Copyright (C) 2002-2004 The ScummVM project
|
||||
|
@ -40,6 +40,10 @@ FileSnapDialog::FileSnapDialog(
|
|||
myBrowser(NULL),
|
||||
myIsGlobal(boss != 0)
|
||||
{
|
||||
const int lineHeight = font.getLineHeight(),
|
||||
fontWidth = font.getMaxCharWidth(),
|
||||
buttonWidth = font.getStringWidth("Defaults") + 20,
|
||||
buttonHeight = font.getLineHeight() + 4;
|
||||
const int vBorder = 8;
|
||||
int xpos, ypos, bwidth, bheight;
|
||||
WidgetArray wid;
|
||||
|
@ -48,6 +52,10 @@ FileSnapDialog::FileSnapDialog(
|
|||
bwidth = font.getStringWidth("Properties file:") + 20;
|
||||
bheight = font.getLineHeight() + 4;
|
||||
|
||||
// Set real dimensions
|
||||
// _w = 50 * fontWidth + 10;
|
||||
// _h = 11 * (lineHeight + 4) + 10;
|
||||
|
||||
xpos = vBorder; ypos = vBorder;
|
||||
|
||||
// ROM path
|
||||
|
@ -116,24 +124,11 @@ FileSnapDialog::FileSnapDialog(
|
|||
"Multiple snapshots");
|
||||
wid.push_back(mySnapSingleCheckbox);
|
||||
|
||||
// Add OK & Cancel buttons
|
||||
b = addButton(font, 10, _h - 24, "Defaults", kDefaultsCmd);
|
||||
// Add Defaults, OK and Cancel buttons
|
||||
b = new ButtonWidget(this, font, 10, _h - buttonHeight - 10,
|
||||
buttonWidth, buttonHeight, "Defaults", kDefaultsCmd);
|
||||
wid.push_back(b);
|
||||
#ifndef MAC_OSX
|
||||
b = addButton(font, _w - 2 * (kButtonWidth + 7), _h - 24, "OK", kOKCmd);
|
||||
wid.push_back(b);
|
||||
addOKWidget(b);
|
||||
b = addButton(font, _w - (kButtonWidth + 10), _h - 24, "Cancel", kCloseCmd);
|
||||
wid.push_back(b);
|
||||
addCancelWidget(b);
|
||||
#else
|
||||
b = addButton(font, _w - 2 * (kButtonWidth + 7), _h - 24, "Cancel", kCloseCmd);
|
||||
wid.push_back(b);
|
||||
addCancelWidget(b);
|
||||
b = addButton(font, _w - (kButtonWidth + 10), _h - 24, "OK", kOKCmd);
|
||||
wid.push_back(b);
|
||||
addOKWidget(b);
|
||||
#endif
|
||||
addOKCancelBGroup(wid, font);
|
||||
|
||||
addToFocusList(wid);
|
||||
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
// See the file "license" for information on usage and redistribution of
|
||||
// this file, and for a DISCLAIMER OF ALL WARRANTIES.
|
||||
//
|
||||
// $Id: Font.hxx,v 1.9 2008-02-06 13:45:23 stephena Exp $
|
||||
// $Id: Font.hxx,v 1.10 2008-03-23 16:22:46 stephena Exp $
|
||||
//
|
||||
// Based on code from ScummVM - Scumm Interpreter
|
||||
// Copyright (C) 2002-2004 The ScummVM project
|
||||
|
@ -24,21 +24,31 @@
|
|||
|
||||
#include "bspf.hxx"
|
||||
|
||||
struct BBX
|
||||
{
|
||||
Int8 w;
|
||||
Int8 h;
|
||||
Int8 x;
|
||||
Int8 y;
|
||||
};
|
||||
|
||||
/* builtin C-based proportional/fixed font structure */
|
||||
/* based on The Microwindows Project http://microwindows.org */
|
||||
typedef struct
|
||||
{
|
||||
const char* name; /* font name */
|
||||
int maxwidth; /* max width in pixels */
|
||||
int height; /* height in pixels */
|
||||
int ascent; /* ascent (baseline) height */
|
||||
int firstchar; /* first character in bitmap */
|
||||
int size; /* font size in glyphs */
|
||||
const uInt16* bits; /* 16-bit right-padded bitmap data */
|
||||
const uInt16* offset; /* offsets into bitmap data */
|
||||
const uInt8* width; /* character widths or NULL if fixed */
|
||||
int defaultchar; /* default char (not glyph index) */
|
||||
long bits_size; /* # words of bitmap_t bits */
|
||||
const char* name; /* font name */
|
||||
int maxwidth; /* max width in pixels */
|
||||
int height; /* height in pixels */
|
||||
int fbbw, fbbh, fbbx, fbby; /* max bounding box */
|
||||
int ascent; /* ascent (baseline) height */
|
||||
int firstchar; /* first character in bitmap */
|
||||
int size; /* font size in glyphs */
|
||||
const uInt16* bits; /* 16-bit right-padded bitmap data */
|
||||
const uInt32* offset; /* offsets into bitmap data*/
|
||||
const uInt8* width; /* character widths or NULL if fixed */
|
||||
const BBX* bbx; /* character bounding box or NULL if fixed */
|
||||
int defaultchar; /* default char (not glyph index) */
|
||||
long bits_size; /* # words of bitmap_t bits */
|
||||
} FontDesc;
|
||||
|
||||
namespace GUI {
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
// See the file "license" for information on usage and redistribution of
|
||||
// this file, and for a DISCLAIMER OF ALL WARRANTIES.
|
||||
//
|
||||
// $Id: HelpDialog.cxx,v 1.24 2008-02-06 13:45:23 stephena Exp $
|
||||
// $Id: HelpDialog.cxx,v 1.25 2008-03-23 16:22:46 stephena Exp $
|
||||
//
|
||||
// Based on code from ScummVM - Scumm Interpreter
|
||||
// Copyright (C) 2002-2004 The ScummVM project
|
||||
|
@ -96,7 +96,7 @@ void HelpDialog::updateStrings(uInt8 page, uInt8 lines,
|
|||
case 2:
|
||||
title = "Special commands:";
|
||||
ADD_BIND("Ctrl g", "Grab mouse (keep in window)");
|
||||
ADD_BIND("Ctrl f", "Switch between NTSC/PAL/PAL60");
|
||||
ADD_BIND("Ctrl f", "Switch between NTSC/PAL/SECAM");
|
||||
ADD_BIND("Ctrl s", "Save game properties to new file");
|
||||
ADD_LINE;
|
||||
ADD_BIND("Ctrl 0", "Mouse emulates paddle 0");
|
||||
|
@ -130,7 +130,7 @@ void HelpDialog::updateStrings(uInt8 page, uInt8 lines,
|
|||
case 2:
|
||||
title = "Special commands:";
|
||||
ADD_BIND("Cmd g", "Grab mouse (keep in window)");
|
||||
ADD_BIND("Cmd f", "Switch between NTSC/PAL/PAL60");
|
||||
ADD_BIND("Cmd f", "Switch between NTSC/PAL/SECAM");
|
||||
ADD_BIND("Cmd s", "Save game properties to new file");
|
||||
ADD_LINE;
|
||||
ADD_BIND("Cmd 0", "Mouse emulates paddle 0");
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
// See the file "license" for information on usage and redistribution of
|
||||
// this file, and for a DISCLAIMER OF ALL WARRANTIES.
|
||||
//
|
||||
// $Id: InputDialog.cxx,v 1.29 2008-03-22 17:35:03 stephena Exp $
|
||||
// $Id: InputDialog.cxx,v 1.30 2008-03-23 16:22:46 stephena Exp $
|
||||
//============================================================================
|
||||
|
||||
#include "bspf.hxx"
|
||||
|
@ -35,13 +35,18 @@ InputDialog::InputDialog(OSystem* osystem, DialogContainer* parent,
|
|||
const GUI::Font& font, int x, int y, int w, int h)
|
||||
: Dialog(osystem, parent, x, y, w, h)
|
||||
{
|
||||
const int buttonHeight = font.getLineHeight() + 4;
|
||||
const int vBorder = 4;
|
||||
int xpos, ypos, tabID;
|
||||
WidgetArray wid;
|
||||
|
||||
// Set real dimensions
|
||||
// _w = 42 * fontWidth + 10;
|
||||
// _h = 12 * (lineHeight + 4) + 10;
|
||||
|
||||
// The tab widget
|
||||
xpos = 2; ypos = vBorder;
|
||||
myTab = new TabWidget(this, font, xpos, ypos, _w - 2*xpos, _h - 24 - 2*ypos);
|
||||
myTab = new TabWidget(this, font, xpos, ypos, _w - 2*xpos, _h - buttonHeight - 20);
|
||||
addTabWidget(myTab);
|
||||
wid.push_back(myTab);
|
||||
addToFocusList(wid);
|
||||
|
@ -75,22 +80,7 @@ InputDialog::InputDialog(OSystem* osystem, DialogContainer* parent,
|
|||
|
||||
// Add OK and Cancel buttons
|
||||
wid.clear();
|
||||
ButtonWidget* b;
|
||||
#ifndef MAC_OSX
|
||||
b = addButton(font, _w - 2 * (kButtonWidth + 7), _h - 24, "OK", kOKCmd);
|
||||
wid.push_back(b);
|
||||
addOKWidget(b);
|
||||
b = addButton(font, _w - (kButtonWidth + 10), _h - 24, "Cancel", kCloseCmd);
|
||||
wid.push_back(b);
|
||||
addCancelWidget(b);
|
||||
#else
|
||||
b = addButton(font, _w - 2 * (kButtonWidth + 7), _h - 24, "Cancel", kCloseCmd);
|
||||
wid.push_back(b);
|
||||
addCancelWidget(b);
|
||||
b = addButton(font, _w - (kButtonWidth + 10), _h - 24, "OK", kOKCmd);
|
||||
wid.push_back(b);
|
||||
addOKWidget(b);
|
||||
#endif
|
||||
addOKCancelBGroup(wid, font);
|
||||
addBGroupToFocusList(wid);
|
||||
}
|
||||
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
// See the file "license" for information on usage and redistribution of
|
||||
// this file, and for a DISCLAIMER OF ALL WARRANTIES.
|
||||
//
|
||||
// $Id: LauncherDialog.cxx,v 1.84 2008-03-22 18:17:59 stephena Exp $
|
||||
// $Id: LauncherDialog.cxx,v 1.85 2008-03-23 16:22:46 stephena Exp $
|
||||
//
|
||||
// Based on code from ScummVM - Scumm Interpreter
|
||||
// Copyright (C) 2002-2004 The ScummVM project
|
||||
|
@ -64,8 +64,6 @@ LauncherDialog::LauncherDialog(OSystem* osystem, DialogContainer* parent,
|
|||
int xpos = 0, ypos = 0, lwidth = 0;
|
||||
WidgetArray wid;
|
||||
|
||||
#if 0
|
||||
// FIXME - this isn't really useful until we get a resizable and font-aware UI
|
||||
// Check if we want the ROM info viewer
|
||||
// Make sure it will fit within the current bounds
|
||||
myRomInfoFlag = instance()->settings().getBool("romviewer");
|
||||
|
@ -74,7 +72,6 @@ LauncherDialog::LauncherDialog(OSystem* osystem, DialogContainer* parent,
|
|||
cerr << "Error: ROM launcher too small, deactivating ROM info viewer" << endl;
|
||||
myRomInfoFlag = false;
|
||||
}
|
||||
#endif
|
||||
|
||||
// Show game name
|
||||
lwidth = font.getStringWidth("Select an item from the list ...");
|
||||
|
@ -101,7 +98,7 @@ LauncherDialog::LauncherDialog(OSystem* osystem, DialogContainer* parent,
|
|||
if(myRomInfoFlag)
|
||||
{
|
||||
xpos += myList->getWidth() + 15;
|
||||
myRomInfoWidget = new RomInfoWidget(this, font, xpos, ypos,
|
||||
myRomInfoWidget = new RomInfoWidget(this, instance()->font(), xpos, ypos,
|
||||
326, myList->getHeight());
|
||||
wid.push_back(myRomInfoWidget);
|
||||
}
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
// See the file "license" for information on usage and redistribution of
|
||||
// this file, and for a DISCLAIMER OF ALL WARRANTIES.
|
||||
//
|
||||
// $Id: OptionsDialog.cxx,v 1.68 2008-03-22 18:17:59 stephena Exp $
|
||||
// $Id: OptionsDialog.cxx,v 1.69 2008-03-23 16:22:46 stephena Exp $
|
||||
//
|
||||
// Based on code from ScummVM - Scumm Interpreter
|
||||
// Copyright (C) 2002-2004 The ScummVM project
|
||||
|
@ -43,12 +43,12 @@
|
|||
#include "bspf.hxx"
|
||||
|
||||
#define addBigButton(label, cmd) \
|
||||
new ButtonWidget(this, font, xoffset, yoffset, kBigButtonWidth, 18, label, cmd); yoffset += kRowHeight
|
||||
new ButtonWidget(this, font, xoffset, yoffset, buttonWidth, buttonHeight, label, cmd); yoffset += rowHeight
|
||||
|
||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
OptionsDialog::OptionsDialog(OSystem* osystem, DialogContainer* parent,
|
||||
GuiObject* boss, bool global)
|
||||
: Dialog(osystem, parent, 0, 0, kMainMenuWidth, kMainMenuHeight),
|
||||
: Dialog(osystem, parent, 0, 0, 1, 1),
|
||||
myVideoDialog(NULL),
|
||||
myAudioDialog(NULL),
|
||||
myInputDialog(NULL),
|
||||
|
@ -61,6 +61,13 @@ OptionsDialog::OptionsDialog(OSystem* osystem, DialogContainer* parent,
|
|||
myIsGlobal(global)
|
||||
{
|
||||
const GUI::Font& font = instance()->font();
|
||||
const int buttonWidth = font.getStringWidth("Game Properties") + 20,
|
||||
buttonHeight = font.getLineHeight() + 6,
|
||||
rowHeight = font.getLineHeight() + 10;
|
||||
|
||||
_w = 2 * buttonWidth + 30;
|
||||
_h = 6 * rowHeight + 15;
|
||||
|
||||
int xoffset = 10, yoffset = 10;
|
||||
WidgetArray wid;
|
||||
ButtonWidget* b = NULL;
|
||||
|
@ -87,7 +94,7 @@ OptionsDialog::OptionsDialog(OSystem* osystem, DialogContainer* parent,
|
|||
wid.push_back(myRomAuditButton);
|
||||
|
||||
// Move to second column
|
||||
xoffset += kBigButtonWidth + 10; yoffset = 10;
|
||||
xoffset += buttonWidth + 10; yoffset = 10;
|
||||
|
||||
myGameInfoButton = addBigButton("Game Properties", kInfoCmd);
|
||||
wid.push_back(myGameInfoButton);
|
||||
|
@ -112,7 +119,7 @@ OptionsDialog::OptionsDialog(OSystem* osystem, DialogContainer* parent,
|
|||
int x = 0, y = 0, w, h;
|
||||
|
||||
// Now create all the dialogs attached to each menu button
|
||||
w = 230; h = 185;
|
||||
w = 240; h = 185;
|
||||
myVideoDialog = new VideoDialog(myOSystem, parent, font, x, y, w, h);
|
||||
|
||||
w = 200; h = 140;
|
||||
|
@ -128,7 +135,7 @@ OptionsDialog::OptionsDialog(OSystem* osystem, DialogContainer* parent,
|
|||
#endif
|
||||
myInputDialog = new InputDialog(myOSystem, parent, font, x, y, w, h);
|
||||
|
||||
w = 200; h = 145;
|
||||
w = 200; h = 155;
|
||||
myUIDialog = new UIDialog(myOSystem, parent, font, x, y, w, h);
|
||||
|
||||
w = 280; h = 180;
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
// See the file "license" for information on usage and redistribution of
|
||||
// this file, and for a DISCLAIMER OF ALL WARRANTIES.
|
||||
//
|
||||
// $Id: OptionsDialog.hxx,v 1.28 2008-03-14 15:23:24 stephena Exp $
|
||||
// $Id: OptionsDialog.hxx,v 1.29 2008-03-23 16:22:46 stephena Exp $
|
||||
//
|
||||
// Based on code from ScummVM - Scumm Interpreter
|
||||
// Copyright (C) 2002-2004 The ScummVM project
|
||||
|
@ -90,13 +90,6 @@ class OptionsDialog : public Dialog
|
|||
kAboutCmd = 'ABOU',
|
||||
kExitCmd = 'EXIM'
|
||||
};
|
||||
|
||||
enum {
|
||||
kRowHeight = 22,
|
||||
kBigButtonWidth = 90,
|
||||
kMainMenuWidth = (2*kBigButtonWidth + 30),
|
||||
kMainMenuHeight = 6*kRowHeight + 15
|
||||
};
|
||||
};
|
||||
|
||||
#endif
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
// See the file "license" for information on usage and redistribution of
|
||||
// this file, and for a DISCLAIMER OF ALL WARRANTIES.
|
||||
//
|
||||
// $Id: StellaFont.hxx,v 1.8 2008-02-06 13:45:24 stephena Exp $
|
||||
// $Id: StellaFont.hxx,v 1.9 2008-03-23 16:22:46 stephena Exp $
|
||||
//
|
||||
// Based on code from ScummVM - Scumm Interpreter
|
||||
// Copyright (C) 2002-2004 The ScummVM project
|
||||
|
@ -2592,12 +2592,14 @@ static const FontDesc stellaDesc = {
|
|||
"04b-16b-10", /* font name */
|
||||
9, /* max width in pixels */
|
||||
10, /* height in pixels */
|
||||
9, 10, 0, -1, /* max bounding box */
|
||||
8, /* ascent (baseline) height */
|
||||
33, /* first character in bitmap */
|
||||
94, /* font size in glyphs */
|
||||
_stella_font_bits, /* 16-bit right-padded bitmap data */
|
||||
0, /* no encode table*/ /* offsets into bitmap data */
|
||||
0, /* offsets into bitmap data */
|
||||
_stella_sysfont_width, /* character widths or NULL if fixed */
|
||||
0, /* character bounding box or NULL if fixed */
|
||||
33, /* default char (not glyph index) */
|
||||
sizeof(_stella_font_bits)/sizeof(uInt16) /* # words of bitmap_t bits */
|
||||
};
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
// See the file "license" for information on usage and redistribution of
|
||||
// this file, and for a DISCLAIMER OF ALL WARRANTIES.
|
||||
//
|
||||
// $Id: TabWidget.hxx,v 1.19 2008-02-06 13:45:24 stephena Exp $
|
||||
// $Id: TabWidget.hxx,v 1.20 2008-03-23 16:22:46 stephena Exp $
|
||||
//
|
||||
// Based on code from ScummVM - Scumm Interpreter
|
||||
// Copyright (C) 2002-2004 The ScummVM project
|
||||
|
@ -64,6 +64,7 @@ class TabWidget : public Widget, public CommandSender
|
|||
|
||||
int getTabWidth() { return _tabWidth; }
|
||||
int getTabHeight() { return _tabHeight; }
|
||||
int getActiveTab() { return _activeTab; }
|
||||
|
||||
virtual void handleMouseDown(int x, int y, int button, int clickCount);
|
||||
virtual void handleCommand(CommandSender* sender, int cmd, int data, int id);
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
// See the file "license" for information on usage and redistribution of
|
||||
// this file, and for a DISCLAIMER OF ALL WARRANTIES.
|
||||
//
|
||||
// $Id: UIDialog.cxx,v 1.12 2008-03-22 18:17:59 stephena Exp $
|
||||
// $Id: UIDialog.cxx,v 1.13 2008-03-23 16:22:46 stephena Exp $
|
||||
//
|
||||
// Based on code from ScummVM - Scumm Interpreter
|
||||
// Copyright (C) 2002-2004 The ScummVM project
|
||||
|
@ -28,6 +28,7 @@
|
|||
#include "PopUpWidget.hxx"
|
||||
#include "ScrollBarWidget.hxx"
|
||||
#include "Settings.hxx"
|
||||
#include "TabWidget.hxx"
|
||||
#include "Widget.hxx"
|
||||
|
||||
#include "UIDialog.hxx"
|
||||
|
@ -37,75 +38,148 @@ UIDialog::UIDialog(OSystem* osystem, DialogContainer* parent,
|
|||
const GUI::Font& font, int x, int y, int w, int h)
|
||||
: Dialog(osystem, parent, x, y, w, h)
|
||||
{
|
||||
const int lineHeight = font.getLineHeight(),
|
||||
fontHeight = font.getFontHeight();
|
||||
int xpos, ypos;
|
||||
int lwidth = font.getStringWidth("Debugger Height (*): "),
|
||||
pwidth = font.getStringWidth("Standard");
|
||||
const int lineHeight = font.getLineHeight(),
|
||||
fontWidth = font.getMaxCharWidth(),
|
||||
fontHeight = font.getFontHeight(),
|
||||
buttonWidth = font.getStringWidth("Defaults") + 20,
|
||||
buttonHeight = font.getLineHeight() + 4;
|
||||
const int vBorder = 5;
|
||||
int xpos, ypos, tabID;
|
||||
int lwidth, pwidth = font.getStringWidth("Standard");
|
||||
WidgetArray wid;
|
||||
|
||||
xpos = 10; ypos = 10;
|
||||
// Set real dimensions
|
||||
// _w = 36 * fontWidth + 10;
|
||||
// _h = 10 * (lineHeight + 4) + 10;
|
||||
|
||||
// The tab widget
|
||||
xpos = ypos = vBorder;
|
||||
myTab = new TabWidget(this, font, xpos, ypos, _w - 2*xpos, _h - buttonHeight - 20);
|
||||
addTabWidget(myTab);
|
||||
addFocusWidget(myTab);
|
||||
|
||||
//////////////////////////////////////////////////////////
|
||||
// 1) Launcher options
|
||||
wid.clear();
|
||||
tabID = myTab->addTab(" Launcher ");
|
||||
lwidth = font.getStringWidth("Launcher Height: ");
|
||||
|
||||
// Launcher width and height
|
||||
myLauncherWidthSlider = new SliderWidget(this, font, xpos, ypos, pwidth,
|
||||
lineHeight, "Launcher Width (*): ",
|
||||
myLauncherWidthSlider = new SliderWidget(myTab, font, xpos, ypos, pwidth,
|
||||
lineHeight, "Launcher Width: ",
|
||||
lwidth, kLWidthChanged);
|
||||
myLauncherWidthSlider->setMinValue(320);
|
||||
myLauncherWidthSlider->setMaxValue(1920);
|
||||
myLauncherWidthSlider->setStepValue(10);
|
||||
wid.push_back(myLauncherWidthSlider);
|
||||
myLauncherWidthLabel =
|
||||
new StaticTextWidget(this, font,
|
||||
new StaticTextWidget(myTab, font,
|
||||
xpos + myLauncherWidthSlider->getWidth() + 4,
|
||||
ypos + 1, 20, fontHeight, "", kTextAlignLeft);
|
||||
ypos + 1, 4*fontWidth, fontHeight, "", kTextAlignLeft);
|
||||
myLauncherWidthLabel->setFlags(WIDGET_CLEARBG);
|
||||
ypos += lineHeight + 4;
|
||||
|
||||
myLauncherHeightSlider = new SliderWidget(this, font, xpos, ypos, pwidth,
|
||||
lineHeight, "Launcher Height (*): ",
|
||||
myLauncherHeightSlider = new SliderWidget(myTab, font, xpos, ypos, pwidth,
|
||||
lineHeight, "Launcher Height: ",
|
||||
lwidth, kLHeightChanged);
|
||||
myLauncherHeightSlider->setMinValue(240);
|
||||
myLauncherHeightSlider->setMaxValue(1200);
|
||||
myLauncherHeightSlider->setStepValue(10);
|
||||
wid.push_back(myLauncherHeightSlider);
|
||||
myLauncherHeightLabel =
|
||||
new StaticTextWidget(this, font,
|
||||
new StaticTextWidget(myTab, font,
|
||||
xpos + myLauncherHeightSlider->getWidth() + 4,
|
||||
ypos + 1, 20, fontHeight, "", kTextAlignLeft);
|
||||
ypos + 1, 4*fontWidth, fontHeight, "", kTextAlignLeft);
|
||||
myLauncherHeightLabel->setFlags(WIDGET_CLEARBG);
|
||||
ypos += lineHeight + 4;
|
||||
|
||||
// Launcher font
|
||||
myLauncherFontPopup = new PopUpWidget(myTab, font, xpos, ypos+1, pwidth, lineHeight,
|
||||
"Launcher Font: ", lwidth);
|
||||
myLauncherFontPopup->appendEntry("Small", 1);
|
||||
myLauncherFontPopup->appendEntry("Large", 2);
|
||||
wid.push_back(myLauncherFontPopup);
|
||||
ypos += lineHeight + 4;
|
||||
|
||||
// ROM launcher info/snapshot viewer
|
||||
xpos += ((_w - 40 - font.getStringWidth("ROM Info viewer")) >> 1);
|
||||
myRomViewerCheckbox = new CheckboxWidget(myTab, font, xpos, ypos,
|
||||
"ROM Info viewer", 0);
|
||||
wid.push_back(myRomViewerCheckbox);
|
||||
|
||||
// Add message concerning usage
|
||||
xpos = vBorder; ypos += 2*(lineHeight + 4);
|
||||
lwidth = font.getStringWidth("(*) Changes require application restart");
|
||||
new StaticTextWidget(myTab, font, xpos, ypos, lwidth, fontHeight,
|
||||
"(*) Changes require application restart",
|
||||
kTextAlignLeft);
|
||||
|
||||
// Add items for tab 0
|
||||
addToFocusList(wid, tabID);
|
||||
|
||||
//////////////////////////////////////////////////////////
|
||||
// 2) Debugger options
|
||||
wid.clear();
|
||||
tabID = myTab->addTab(" Debugger ");
|
||||
lwidth = font.getStringWidth("Debugger Height: ");
|
||||
xpos = ypos = vBorder;
|
||||
|
||||
// Debugger width and height
|
||||
myDebuggerWidthSlider = new SliderWidget(this, font, xpos, ypos, pwidth,
|
||||
lineHeight, "Debugger Width (*): ",
|
||||
myDebuggerWidthSlider = new SliderWidget(myTab, font, xpos, ypos, pwidth,
|
||||
lineHeight, "Debugger Width: ",
|
||||
lwidth, kDWidthChanged);
|
||||
myDebuggerWidthSlider->setMinValue(1030);
|
||||
myDebuggerWidthSlider->setMaxValue(1920);
|
||||
myDebuggerWidthSlider->setStepValue(10);
|
||||
wid.push_back(myDebuggerWidthSlider);
|
||||
myDebuggerWidthLabel =
|
||||
new StaticTextWidget(this, font,
|
||||
new StaticTextWidget(myTab, font,
|
||||
xpos + myDebuggerWidthSlider->getWidth() + 4,
|
||||
ypos + 1, 20, fontHeight, "", kTextAlignLeft);
|
||||
ypos + 1, 4*fontWidth, fontHeight, "", kTextAlignLeft);
|
||||
myDebuggerWidthLabel->setFlags(WIDGET_CLEARBG);
|
||||
ypos += lineHeight + 4;
|
||||
|
||||
myDebuggerHeightSlider = new SliderWidget(this, font, xpos, ypos, pwidth,
|
||||
lineHeight, "Debugger Height (*): ",
|
||||
myDebuggerHeightSlider = new SliderWidget(myTab, font, xpos, ypos, pwidth,
|
||||
lineHeight, "Debugger Height: ",
|
||||
lwidth, kDHeightChanged);
|
||||
myDebuggerHeightSlider->setMinValue(690);
|
||||
myDebuggerHeightSlider->setMaxValue(1200);
|
||||
myDebuggerHeightSlider->setStepValue(10);
|
||||
wid.push_back(myDebuggerHeightSlider);
|
||||
myDebuggerHeightLabel =
|
||||
new StaticTextWidget(this, font,
|
||||
new StaticTextWidget(myTab, font,
|
||||
xpos + myDebuggerHeightSlider->getWidth() + 4,
|
||||
ypos + 1, 20, fontHeight, "", kTextAlignLeft);
|
||||
ypos + 1, 4*fontWidth, fontHeight, "", kTextAlignLeft);
|
||||
myDebuggerHeightLabel->setFlags(WIDGET_CLEARBG);
|
||||
|
||||
// Add message concerning usage
|
||||
xpos = vBorder; ypos += 2*(lineHeight + 4);
|
||||
lwidth = font.getStringWidth("(*) Changes require application restart");
|
||||
new StaticTextWidget(myTab, font, xpos, ypos, lwidth, fontHeight,
|
||||
"(*) Changes require application restart",
|
||||
kTextAlignLeft);
|
||||
|
||||
// Add items for tab 1
|
||||
addToFocusList(wid, tabID);
|
||||
|
||||
//////////////////////////////////////////////////////////
|
||||
// 3) Misc. options
|
||||
wid.clear();
|
||||
tabID = myTab->addTab(" Misc. ");
|
||||
lwidth = font.getStringWidth("Mouse wheel scroll: ");
|
||||
xpos = ypos = vBorder;
|
||||
|
||||
// UI Palette
|
||||
ypos += 1;
|
||||
myPalettePopup = new PopUpWidget(myTab, font, xpos, ypos, pwidth, lineHeight,
|
||||
"Interface Palette: ", lwidth);
|
||||
myPalettePopup->appendEntry("Standard", 1);
|
||||
myPalettePopup->appendEntry("Classic", 2);
|
||||
wid.push_back(myPalettePopup);
|
||||
ypos += lineHeight + 4;
|
||||
|
||||
// Number of lines a mouse wheel will scroll
|
||||
myWheelLinesSlider = new SliderWidget(this, font, xpos, ypos, pwidth,
|
||||
myWheelLinesSlider = new SliderWidget(myTab, font, xpos, ypos, pwidth,
|
||||
lineHeight, "Mouse wheel scroll: ",
|
||||
lwidth, kWLinesChanged);
|
||||
myWheelLinesSlider->setMinValue(1);
|
||||
|
@ -113,55 +187,26 @@ UIDialog::UIDialog(OSystem* osystem, DialogContainer* parent,
|
|||
myWheelLinesSlider->setStepValue(1);
|
||||
wid.push_back(myWheelLinesSlider);
|
||||
myWheelLinesLabel =
|
||||
new StaticTextWidget(this, font,
|
||||
new StaticTextWidget(myTab, font,
|
||||
xpos + myWheelLinesSlider->getWidth() + 4,
|
||||
ypos + 1, 20, fontHeight, "", kTextAlignLeft);
|
||||
ypos + 1, 2*fontWidth, fontHeight, "", kTextAlignLeft);
|
||||
myWheelLinesLabel->setFlags(WIDGET_CLEARBG);
|
||||
ypos += lineHeight + 4;
|
||||
|
||||
// UI Palette
|
||||
ypos += 1;
|
||||
myPalettePopup = new PopUpWidget(this, font, xpos, ypos, pwidth, lineHeight,
|
||||
"Interface Palette: ", lwidth);
|
||||
myPalettePopup->appendEntry("Standard", 1);
|
||||
myPalettePopup->appendEntry("Classic", 2);
|
||||
wid.push_back(myPalettePopup);
|
||||
ypos += lineHeight + 4;
|
||||
// Add items for tab 2
|
||||
addToFocusList(wid, tabID);
|
||||
|
||||
#if 0
|
||||
// ROM info viewer
|
||||
xpos += ((_w - 40 - font.getStringWidth("ROM Info viewer (*)")) >> 1);
|
||||
myRomViewerCheckbox = new CheckboxWidget(this, font, xpos, ypos,
|
||||
"ROM Info viewer (*)", 0);
|
||||
|
||||
// Add message concerning usage
|
||||
lwidth = font.getStringWidth("(*) Requires application restart");
|
||||
new StaticTextWidget(this, font, 10, _h - 38, lwidth, fontHeight,
|
||||
"(*) Requires application restart",
|
||||
kTextAlignLeft);
|
||||
#endif
|
||||
// Activate the first tab
|
||||
myTab->setActiveTab(0);
|
||||
|
||||
// Add Defaults, OK and Cancel buttons
|
||||
wid.clear();
|
||||
ButtonWidget* b;
|
||||
b = addButton(font, 10, _h - 24, "Defaults", kDefaultsCmd);
|
||||
b = new ButtonWidget(this, font, 10, _h - buttonHeight - 10,
|
||||
buttonWidth, buttonHeight, "Defaults", kDefaultsCmd);
|
||||
wid.push_back(b);
|
||||
#ifndef MAC_OSX
|
||||
b = addButton(font, _w - 2 * (kButtonWidth + 7), _h - 24, "OK", kOKCmd);
|
||||
wid.push_back(b);
|
||||
addOKWidget(b);
|
||||
b = addButton(font, _w - (kButtonWidth + 10), _h - 24, "Cancel", kCloseCmd);
|
||||
wid.push_back(b);
|
||||
addCancelWidget(b);
|
||||
#else
|
||||
b = addButton(font, _w - 2 * (kButtonWidth + 7), _h - 24, "Cancel", kCloseCmd);
|
||||
wid.push_back(b);
|
||||
addCancelWidget(b);
|
||||
b = addButton(font, _w - (kButtonWidth + 10), _h - 24, "OK", kOKCmd);
|
||||
wid.push_back(b);
|
||||
addOKWidget(b);
|
||||
#endif
|
||||
|
||||
addToFocusList(wid);
|
||||
addOKCancelBGroup(wid, font);
|
||||
addBGroupToFocusList(wid);
|
||||
|
||||
#ifndef DEBUGGER_SUPPORT
|
||||
myDebuggerWidthSlider->clearFlags(WIDGET_ENABLED);
|
||||
|
@ -187,44 +232,48 @@ void UIDialog::loadConfig()
|
|||
|
||||
// Launcher size
|
||||
instance()->settings().getSize("launcherres", w, h);
|
||||
if(w < 320) w = 320;
|
||||
if(w > 800) w = 800;
|
||||
if(h < 240) h = 240;
|
||||
if(h > 600) h = 600;
|
||||
w = BSPF_max(w, 320);
|
||||
h = BSPF_max(h, 240);
|
||||
w = BSPF_min(w, 1920);
|
||||
h = BSPF_min(h, 1200);
|
||||
|
||||
myLauncherWidthSlider->setValue(w);
|
||||
myLauncherWidthLabel->setValue(w);
|
||||
myLauncherHeightSlider->setValue(h);
|
||||
myLauncherHeightLabel->setValue(h);
|
||||
|
||||
// Launcher font
|
||||
const string& s = instance()->settings().getString("launcherfont");
|
||||
myLauncherFontPopup->setSelectedTag(s == "large" ? 2 : 1);
|
||||
|
||||
// ROM launcher info viewer
|
||||
bool b = instance()->settings().getBool("romviewer");
|
||||
myRomViewerCheckbox->setState(b);
|
||||
|
||||
// Debugger size
|
||||
instance()->settings().getSize("debuggerres", w, h);
|
||||
if(w < 1030) w = 1030;
|
||||
if(w > 1600) w = 1600;
|
||||
if(h < 690) h = 690;
|
||||
if(h > 1200) h = 1200;
|
||||
w = BSPF_max(w, 1030);
|
||||
h = BSPF_max(h, 690);
|
||||
w = BSPF_min(w, 1920);
|
||||
h = BSPF_min(h, 1200);
|
||||
|
||||
myDebuggerWidthSlider->setValue(w);
|
||||
myDebuggerWidthLabel->setValue(w);
|
||||
myDebuggerHeightSlider->setValue(h);
|
||||
myDebuggerHeightLabel->setValue(h);
|
||||
|
||||
// UI palette
|
||||
int i = instance()->settings().getInt("uipalette");
|
||||
if(i < 1 || i > 2) i = 1;
|
||||
myPalettePopup->setSelectedTag(i);
|
||||
|
||||
// Mouse wheel lines
|
||||
int mw = instance()->settings().getInt("mwheel");
|
||||
if(mw < 1 || mw > 10) mw = 1;
|
||||
myWheelLinesSlider->setValue(mw);
|
||||
myWheelLinesLabel->setValue(mw);
|
||||
|
||||
// UI palette
|
||||
int i = instance()->settings().getInt("uipalette");
|
||||
if(i < 1 || i > 2) i = 1;
|
||||
myPalettePopup->setSelectedTag(i);
|
||||
|
||||
#if 0
|
||||
// ROM info viewer
|
||||
bool b = instance()->settings().getBool("romviewer");
|
||||
myRomViewerCheckbox->setState(b);
|
||||
#endif
|
||||
myTab->loadConfig();
|
||||
}
|
||||
|
||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
|
@ -234,44 +283,60 @@ void UIDialog::saveConfig()
|
|||
instance()->settings().setSize("launcherres",
|
||||
myLauncherWidthSlider->getValue(), myLauncherHeightSlider->getValue());
|
||||
|
||||
// Launcher font
|
||||
instance()->settings().setString("launcherfont",
|
||||
myLauncherFontPopup->getSelectedTag() == 1 ? "small" : "large");
|
||||
|
||||
// ROM launcher info viewer
|
||||
instance()->settings().setBool("romviewer", myRomViewerCheckbox->getState());
|
||||
|
||||
// Debugger size
|
||||
instance()->settings().setSize("debuggerres",
|
||||
myDebuggerWidthSlider->getValue(), myDebuggerHeightSlider->getValue());
|
||||
|
||||
// Mouse wheel lines
|
||||
int mw = myWheelLinesSlider->getValue();
|
||||
instance()->settings().setInt("mwheel", mw);
|
||||
ScrollBarWidget::setWheelLines(mw);
|
||||
|
||||
// UI palette
|
||||
instance()->settings().setInt("uipalette",
|
||||
myPalettePopup->getSelectedTag());
|
||||
|
||||
#if 0
|
||||
// ROM info viewer
|
||||
instance()->settings().setBool("romviewer", myRomViewerCheckbox->getState());
|
||||
#endif
|
||||
// Mouse wheel lines
|
||||
int mw = myWheelLinesSlider->getValue();
|
||||
instance()->settings().setInt("mwheel", mw);
|
||||
ScrollBarWidget::setWheelLines(mw);
|
||||
}
|
||||
|
||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
void UIDialog::setDefaults()
|
||||
{
|
||||
int w = BSPF_min(instance()->desktopWidth(), 400u);
|
||||
int h = BSPF_min(instance()->desktopHeight(), 300u);
|
||||
myLauncherWidthSlider->setValue(w);
|
||||
myLauncherWidthLabel->setValue(w);
|
||||
myLauncherHeightSlider->setValue(h);
|
||||
myLauncherHeightLabel->setValue(h);
|
||||
switch(myTab->getActiveTab())
|
||||
{
|
||||
case 0: // Launcher options
|
||||
{
|
||||
int w = BSPF_min(instance()->desktopWidth(), 640u);
|
||||
int h = BSPF_min(instance()->desktopHeight(), 480u);
|
||||
myLauncherWidthSlider->setValue(w);
|
||||
myLauncherWidthLabel->setValue(w);
|
||||
myLauncherHeightSlider->setValue(h);
|
||||
myLauncherHeightLabel->setValue(h);
|
||||
myRomViewerCheckbox->setState(false);
|
||||
break;
|
||||
}
|
||||
|
||||
myDebuggerWidthSlider->setValue(1030);
|
||||
myDebuggerWidthLabel->setValue(1030);
|
||||
myDebuggerHeightSlider->setValue(690);
|
||||
myDebuggerHeightLabel->setValue(690);
|
||||
case 1: // Debugger options
|
||||
myDebuggerWidthSlider->setValue(1030);
|
||||
myDebuggerWidthLabel->setValue(1030);
|
||||
myDebuggerHeightSlider->setValue(690);
|
||||
myDebuggerHeightLabel->setValue(690);
|
||||
break;
|
||||
|
||||
myWheelLinesSlider->setValue(4);
|
||||
myWheelLinesLabel->setValue(4);
|
||||
case 2: // Misc. options
|
||||
myPalettePopup->setSelectedTag(1);
|
||||
myWheelLinesSlider->setValue(4);
|
||||
myWheelLinesLabel->setValue(4);
|
||||
break;
|
||||
|
||||
myPalettePopup->setSelectedTag(1);
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
_dirty = true;
|
||||
}
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
// See the file "license" for information on usage and redistribution of
|
||||
// this file, and for a DISCLAIMER OF ALL WARRANTIES.
|
||||
//
|
||||
// $Id: UIDialog.hxx,v 1.7 2008-03-13 22:58:07 stephena Exp $
|
||||
// $Id: UIDialog.hxx,v 1.8 2008-03-23 16:22:46 stephena Exp $
|
||||
//
|
||||
// Based on code from ScummVM - Scumm Interpreter
|
||||
// Copyright (C) 2002-2004 The ScummVM project
|
||||
|
@ -29,6 +29,7 @@ class CheckboxWidget;
|
|||
class PopUpWidget;
|
||||
class SliderWidget;
|
||||
class StaticTextWidget;
|
||||
class TabWidget;
|
||||
|
||||
#include "OSystem.hxx"
|
||||
#include "bspf.hxx"
|
||||
|
@ -41,22 +42,26 @@ class UIDialog : public Dialog
|
|||
~UIDialog();
|
||||
|
||||
protected:
|
||||
TabWidget* myTab;
|
||||
|
||||
// Launcher options
|
||||
SliderWidget* myLauncherWidthSlider;
|
||||
StaticTextWidget* myLauncherWidthLabel;
|
||||
SliderWidget* myLauncherHeightSlider;
|
||||
StaticTextWidget* myLauncherHeightLabel;
|
||||
PopUpWidget* myLauncherFontPopup;
|
||||
CheckboxWidget* myRomViewerCheckbox;
|
||||
|
||||
// Debugger options
|
||||
SliderWidget* myDebuggerWidthSlider;
|
||||
StaticTextWidget* myDebuggerWidthLabel;
|
||||
SliderWidget* myDebuggerHeightSlider;
|
||||
StaticTextWidget* myDebuggerHeightLabel;
|
||||
|
||||
// Misc options
|
||||
PopUpWidget* myPalettePopup;
|
||||
SliderWidget* myWheelLinesSlider;
|
||||
StaticTextWidget* myWheelLinesLabel;
|
||||
|
||||
PopUpWidget* myPalettePopup;
|
||||
|
||||
CheckboxWidget* myRomViewerCheckbox;
|
||||
|
||||
private:
|
||||
void loadConfig();
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
// See the file "license" for information on usage and redistribution of
|
||||
// this file, and for a DISCLAIMER OF ALL WARRANTIES.
|
||||
//
|
||||
// $Id: VideoDialog.cxx,v 1.48 2008-02-06 13:45:24 stephena Exp $
|
||||
// $Id: VideoDialog.cxx,v 1.49 2008-03-23 16:22:46 stephena Exp $
|
||||
//
|
||||
// Based on code from ScummVM - Scumm Interpreter
|
||||
// Copyright (C) 2002-2004 The ScummVM project
|
||||
|
@ -38,13 +38,20 @@ VideoDialog::VideoDialog(OSystem* osystem, DialogContainer* parent,
|
|||
const GUI::Font& font, int x, int y, int w, int h)
|
||||
: Dialog(osystem, parent, x, y, w, h)
|
||||
{
|
||||
const int lineHeight = font.getLineHeight(),
|
||||
fontHeight = font.getFontHeight();
|
||||
const int lineHeight = font.getLineHeight(),
|
||||
fontWidth = font.getMaxCharWidth(),
|
||||
fontHeight = font.getFontHeight(),
|
||||
buttonWidth = font.getStringWidth("Defaults") + 20,
|
||||
buttonHeight = font.getLineHeight() + 4;
|
||||
int xpos, ypos;
|
||||
int lwidth = font.getStringWidth("Dirty Rects: "),
|
||||
pwidth = font.getStringWidth("Software");
|
||||
pwidth = font.getStringWidth("1920x1200");
|
||||
WidgetArray wid;
|
||||
|
||||
// Set real dimensions
|
||||
// _w = 46 * fontWidth + 10;
|
||||
// _h = 11 * (lineHeight + 4) + 10;
|
||||
|
||||
xpos = 5; ypos = 10;
|
||||
|
||||
// Video renderer
|
||||
|
@ -98,10 +105,9 @@ VideoDialog::VideoDialog(OSystem* osystem, DialogContainer* parent,
|
|||
"UI Zoom: ", lwidth, kUIZoomChanged);
|
||||
myUIZoomSlider->setMinValue(1); myUIZoomSlider->setMaxValue(10);
|
||||
wid.push_back(myUIZoomSlider);
|
||||
myUIZoomLabel = new StaticTextWidget(this, font,
|
||||
xpos + myUIZoomSlider->getWidth() + 4,
|
||||
ypos + 1,
|
||||
15, fontHeight, "", kTextAlignLeft);
|
||||
myUIZoomLabel =
|
||||
new StaticTextWidget(this, font, xpos + myUIZoomSlider->getWidth() + 4,
|
||||
ypos + 1, fontWidth * 2, fontHeight, "", kTextAlignLeft);
|
||||
myUIZoomLabel->setFlags(WIDGET_CLEARBG);
|
||||
ypos += lineHeight + 4;
|
||||
|
||||
|
@ -110,10 +116,9 @@ VideoDialog::VideoDialog(OSystem* osystem, DialogContainer* parent,
|
|||
"TIA Zoom: ", lwidth, kTIAZoomChanged);
|
||||
myTIAZoomSlider->setMinValue(1); myTIAZoomSlider->setMaxValue(10);
|
||||
wid.push_back(myTIAZoomSlider);
|
||||
myTIAZoomLabel = new StaticTextWidget(this, font,
|
||||
xpos + myTIAZoomSlider->getWidth() + 4,
|
||||
ypos + 1,
|
||||
15, fontHeight, "", kTextAlignLeft);
|
||||
myTIAZoomLabel =
|
||||
new StaticTextWidget(this, font, xpos + myTIAZoomSlider->getWidth() + 4,
|
||||
ypos + 1, fontWidth * 2, fontHeight, "", kTextAlignLeft);
|
||||
myTIAZoomLabel->setFlags(WIDGET_CLEARBG);
|
||||
ypos += lineHeight + 4;
|
||||
|
||||
|
@ -125,11 +130,12 @@ VideoDialog::VideoDialog(OSystem* osystem, DialogContainer* parent,
|
|||
wid.push_back(myAspectRatioSlider);
|
||||
myAspectRatioLabel =
|
||||
new StaticTextWidget(this, font, xpos + myAspectRatioSlider->getWidth() + 4,
|
||||
ypos + 1, 15, fontHeight, "", kTextAlignLeft);
|
||||
ypos + 1, fontWidth * 3, fontHeight, "", kTextAlignLeft);
|
||||
myAspectRatioLabel->setFlags(WIDGET_CLEARBG);
|
||||
|
||||
// Move over to the next column
|
||||
xpos += 115; ypos = 10;
|
||||
xpos += myAspectRatioSlider->getWidth() + myAspectRatioLabel->getWidth();
|
||||
ypos = 10;
|
||||
|
||||
// Framerate
|
||||
myFrameRateSlider = new SliderWidget(this, font, xpos, ypos, 30, lineHeight,
|
||||
|
@ -144,54 +150,41 @@ VideoDialog::VideoDialog(OSystem* osystem, DialogContainer* parent,
|
|||
ypos += lineHeight + 4;
|
||||
|
||||
// Fullscreen
|
||||
myFullscreenCheckbox = new CheckboxWidget(this, font, xpos + 5, ypos,
|
||||
myFullscreenCheckbox = new CheckboxWidget(this, font, xpos, ypos,
|
||||
"Fullscreen mode", kFullScrChanged);
|
||||
wid.push_back(myFullscreenCheckbox);
|
||||
ypos += lineHeight + 4;
|
||||
|
||||
// PAL color-loss effect
|
||||
myColorLossCheckbox = new CheckboxWidget(this, font, xpos + 5, ypos,
|
||||
myColorLossCheckbox = new CheckboxWidget(this, font, xpos, ypos,
|
||||
"PAL color-loss");
|
||||
wid.push_back(myColorLossCheckbox);
|
||||
ypos += lineHeight + 4;
|
||||
|
||||
// Use sync to vblank in OpenGL
|
||||
myUseVSyncCheckbox = new CheckboxWidget(this, font, xpos + 5, ypos,
|
||||
myUseVSyncCheckbox = new CheckboxWidget(this, font, xpos, ypos,
|
||||
"GL VSync");
|
||||
wid.push_back(myUseVSyncCheckbox);
|
||||
ypos += lineHeight + 4;
|
||||
|
||||
// Center window (in windowed mode)
|
||||
myCenterCheckbox = new CheckboxWidget(this, font, xpos + 5, ypos,
|
||||
myCenterCheckbox = new CheckboxWidget(this, font, xpos, ypos,
|
||||
"Center window (*)");
|
||||
wid.push_back(myCenterCheckbox);
|
||||
ypos += lineHeight + 4;
|
||||
|
||||
// Add message concerning usage
|
||||
lwidth = font.getStringWidth("(*) Requires application restart");
|
||||
new StaticTextWidget(this, font, 10, _h - 38, lwidth, fontHeight,
|
||||
new StaticTextWidget(this, font, 10, _h - 2*buttonHeight - 10, lwidth, fontHeight,
|
||||
"(*) Requires application restart",
|
||||
kTextAlignLeft);
|
||||
|
||||
// Add Defaults, OK and Cancel buttons
|
||||
ButtonWidget* b;
|
||||
b = addButton(font, 10, _h - 24, "Defaults", kDefaultsCmd);
|
||||
b = new ButtonWidget(this, font, 10, _h - buttonHeight - 10,
|
||||
buttonWidth, buttonHeight, "Defaults", kDefaultsCmd);
|
||||
wid.push_back(b);
|
||||
#ifndef MAC_OSX
|
||||
b = addButton(font, _w - 2 * (kButtonWidth + 7), _h - 24, "OK", kOKCmd);
|
||||
wid.push_back(b);
|
||||
addOKWidget(b);
|
||||
b = addButton(font, _w - (kButtonWidth + 10), _h - 24, "Cancel", kCloseCmd);
|
||||
wid.push_back(b);
|
||||
addCancelWidget(b);
|
||||
#else
|
||||
b = addButton(font, _w - 2 * (kButtonWidth + 7), _h - 24, "Cancel", kCloseCmd);
|
||||
wid.push_back(b);
|
||||
addCancelWidget(b);
|
||||
b = addButton(font, _w - (kButtonWidth + 10), _h - 24, "OK", kOKCmd);
|
||||
wid.push_back(b);
|
||||
addOKWidget(b);
|
||||
#endif
|
||||
addOKCancelBGroup(wid, font);
|
||||
|
||||
addToFocusList(wid);
|
||||
|
||||
|
|
Loading…
Reference in New Issue