1077 Commits

Author SHA1 Message Date
Torbjörn Andersson
8062eb6ec3 Set and show/hide mouse cursors through a "cursor manager" (analogous to the
recently added (cursor) palette manager) so that the cursor can be properly
restored after returning from the GUI.

If there's any C++ magic that can keep the backend functions from being called
by anything else than these managing classes, that would probably be a good
idea. Also, since the cursor manager keeps a copy of the cursor image, perhaps
there are at least some backends that will no longer need to?

svn-id: r22639
2006-05-25 22:51:42 +00:00
Torbjörn Andersson
21a74b6f41 Cleanup.
svn-id: r22635
2006-05-25 20:29:17 +00:00
Torbjörn Andersson
0e6831fa32 Fixed stupid error in replaceCursorPalette().
svn-id: r22629
2006-05-25 19:22:28 +00:00
Torbjörn Andersson
a49c64799f Fixed comment to make it less obvious where I copied the general structure of
the palette manager from.

svn-id: r22628
2006-05-25 18:31:56 +00:00
Torbjörn Andersson
d7296ae666 Make it so that if the new cursor palette to be set has zero colours, the
cursor palette is disabled.

Also, when replacing a cursor palette, try to re-use the old palette buffer, as
a minor optimization. (Not that these functions should need any optimization,
but it's simple and shouldn't hurt.)

svn-id: r22554
2006-05-21 13:27:18 +00:00
Torbjörn Andersson
75f226953a Oops, I guess I never got around to fully implement replaceCursorPalette().
svn-id: r22552
2006-05-21 12:32:39 +00:00
Torbjörn Andersson
3e973d2a91 Forgot to set g_initialized to true.
svn-id: r22544
2006-05-20 11:24:45 +00:00
Torbjörn Andersson
6cdd98b617 After the GUI has finished, restore the old cursor palette (if any). For this
to work, cursor palette now has to be set using the new "palette manager". See
graphics/paletteman.cpp

svn-id: r22543
2006-05-20 10:59:25 +00:00
Torbjörn Andersson
e563d0c182 Renamed screenChanged() to handleScreenChanged().
svn-id: r22518
2006-05-18 13:58:33 +00:00
Torbjörn Andersson
5c1f91eed4 Allow changing scaler while playing MPEG cutscenes.
svn-id: r22515
2006-05-18 13:18:02 +00:00
Eugene Sandulenko
14ec3f45fa - Heavily modified patch #1214784: "Disable overlay scaling"
- Eriktorbjorn's patch from same tracker item for scaling sword1/2 cutscenes
  is applied as is. It lacks resolution switch on-the-fly.
- GUI widgets are repositioned on the fly and use most space, even aspect
  ratio corrected screen is used without scaling
- Heavy tesing is required, but works for me in all cases except for bug
  #1483272: "GUI: SCUMM pause dialog breaks upon scaler switch" which needs more
  work.
- I probavly broke some backend or two

svn-id: r22505
2006-05-17 23:52:45 +00:00
Eugene Sandulenko
d2546e3979 - Updated MSVC8 project files
- Renamed base/options.cpp to base/commandLine.cpp because of conflict
  with gui/options.cpp which sit in same directory in MSVC builds
- Moved AudioCDManager singleton declaration outside of Audio namespace
- Fixed numerous MSVC warning of potentially uninitialized variables and
  int <-> bool conversions.

svn-id: r22397
2006-05-09 14:16:43 +00:00
Max Horn
27307acd7c Moved the AudioCDManager as well as class AudioStream and its (standard) subclasses to namespace Audio
svn-id: r22231
2006-04-29 22:33:31 +00:00
Lars Persson
aec70b0bb2 Implementation and declartion in intern.h differed. Changed so both is using the same datatype.
svn-id: r22074
2006-04-21 20:56:53 +00:00
Eugene Sandulenko
718532b386 Fix ASM HQ routines, because RGBtoYUV and LUT16to32 are on heap now.
svn-id: r22041
2006-04-19 22:53:37 +00:00
Max Horn
a76689ed71 Make use of triple-interpolation function in SuperEagel (should save a few cycles... not that it really matters :)
svn-id: r21985
2006-04-17 18:54:20 +00:00
Max Horn
43143daca7 Replace interpolate32 calls by interpolate16 calls (as we only work on single pixels here currently)
svn-id: r21983
2006-04-17 18:28:19 +00:00
Max Horn
c128bad7df Simple optimization
svn-id: r21982
2006-04-17 18:23:16 +00:00
Max Horn
b47e531425 Renamed and merge some of the pixel interpolation functions (the names still could be better)
svn-id: r21981
2006-04-17 18:17:02 +00:00
Max Horn
340705c138 Allocate LUT/YUV tables on the heap
svn-id: r21971
2006-04-17 11:16:11 +00:00
Max Horn
35a2fc4028 Modify InitLUT to make use of ColorMasks, making it easier to add support for other color modes eventually. This also fixes the computation of LUT16to32 which so far always assumed 565 mode.
svn-id: r21970
2006-04-17 11:11:07 +00:00
Max Horn
2732ed3dce Fixed (A)RGBToColor templates
svn-id: r21969
2006-04-17 11:09:21 +00:00
Max Horn
d7944e839b Since we define alpha value 255 to mean 'opaque', or T::kAlphaMask into the result of RGBToColor
svn-id: r21968
2006-04-17 10:44:02 +00:00
Max Horn
fe9f60e219 Add color conversion functions based on ColorMasks, to demonstrate how this would work
svn-id: r21967
2006-04-17 10:41:18 +00:00
Max Horn
ea85e8c986 Moved ColorMasks to their own new header graphics/colormasks.h, so that both the scalers and the GUI code can access them. Also added (untested) entries for 1555, 444, 888 and 8888 modes
svn-id: r21966
2006-04-17 10:22:05 +00:00
Max Horn
d27396d51d cleanup
svn-id: r21964
2006-04-17 09:35:42 +00:00
Max Horn
de250812e5 Removed my Altivec version of the hqx blitters, since it (a) didn't work with newer GCC versions, (b) speed was improved on some systems, but actually slower on others, and (c) even on my old 400 Mhz G4 hqx is fast enough w/o it
svn-id: r21961
2006-04-17 08:38:26 +00:00
Johannes Schickel
e9cbf5fcbd - Moves Graphics::loadFont to Graphics::NewFont::loadFont
- adds code for caching of fonts (just for Graphics::NewFont)
- implements cache using in the modern theme for custom fonts
- adds cache file for current normal font in the theme zip file

svn-id: r21952
2006-04-16 19:54:39 +00:00
Max Horn
1e47edcd22 cleanup
svn-id: r21921
2006-04-15 21:29:41 +00:00
Johannes Schickel
96cf7028b9 - implements .bdf font loader based on convbdf (sure could have some clean up)
- adds three different font styles to the themes (normal, bold (default one), italic)
- implements code for specifing the font files in the theme config ('fontfile_normal','fontfile_bold' and 'fontfile_italic' in the 'extra' section)
- changes EditTextWidget to use the normal font (has some minor aligment problems with the caret now, though)
- extends the FontManager (new functions: getFontByName, assignFontToName, removeFontName)
- adds the font style constans to the builtin constants for the evaluator)

svn-id: r21868
2006-04-14 02:16:55 +00:00
Max Horn
1470dadb1d Changed File::open to take a Common::String as file name parameter
svn-id: r21867
2006-04-14 01:48:51 +00:00
Max Horn
5072816109 Use const keyword to help compiler optimize code
svn-id: r21866
2006-04-14 01:47:33 +00:00
Max Horn
e4930bd96d Don't use HAVE_CONFIG_H / config.h directly, use scummsys.h instead
svn-id: r21605
2006-04-04 21:45:13 +00:00
Max Horn
9217472f0e With this change, backends are now responsible for instantiating their OSystem class before calling scummvm_main (Note: PalmOS and Symbian are not yet converted, and won't work currently)
svn-id: r21557
2006-04-02 14:16:31 +00:00
Max Horn
8cdee5a931 Do not #include endian.h in scummsys.h (cuts down deps on endian.h from ~400 to ~250). Many greetings to eriktorbjorn, and have fun recompiling.
svn-id: r21500
2006-03-29 15:59:37 +00:00
Oystein Eftevaag
58eed3830b * 'make bundle' now copies the default theme files into the bundle.
* Common::File will now look inside the application bundle on MacOS X for a file if
it can't find it anywhere else (so it'll find default-theme.ini and .zip)
* Cleaned up some #ifs.

svn-id: r21308
2006-03-15 07:43:44 +00:00
Oystein Eftevaag
c3d8674a26 Adds support for building on Intel Macs, using a modified
version of patch 1448395 by Aubin and some of my 
own changes.

Notably:
* Two elements of a struct in backends/midi/quicktime.cpp
needed to be forced to BE.
* NASM set to build Mach-O binaries
* configure now checks for Altivec support on Darwin hosts,
instead of assuming it. Altivec support can also be disabled (not 100% sure if t
his is actually needed, but might be handy for crosscompiling).
* The aliasing of the symbols contained in the .asm files
done on Windows were also needed on MacOS.

Note that while the asm code is properly compiled and linked
in, HQ2/3x support will still not work properly on Intel macs
if NASM is enabled.

svn-id: r21280
2006-03-14 12:18:04 +00:00
Chris Apers
65e688ac15 Fixed compilation, this could be used with all systems (?)
svn-id: r21112
2006-03-06 19:44:15 +00:00
Paweł Kołodziejski
95116f2098 define int types for msvc to allow compile mpeg2 library. msvc does not fully conform C99
svn-id: r21073
2006-03-04 15:26:26 +00:00
Max Horn
48fb7ea979 Fix bug #1436178 (ALL: int8_t in graphics/animation in conflict with ISO99 C)
svn-id: r20877
2006-02-25 14:42:21 +00:00
Max Horn
9cec516e51 Moved fonts to a new dir graphics/fonts
svn-id: r20800
2006-02-20 20:42:03 +00:00
Max Horn
e49e7ebb3f Fixing up my previous commit: finished moving common/scaler* to graphics
svn-id: r20798
2006-02-20 20:40:12 +00:00
Max Horn
7335d348ba Moved common/scaler* to graphics/
svn-id: r20797
2006-02-20 20:29:02 +00:00
Max Horn
80cf2fa46f Reduced data duplication in module.mk files; added module.mk files for null and x11 backends; added engines/module.mk
svn-id: r20584
2006-02-12 00:16:31 +00:00
Max Horn
13d6a56867 Change CVS keywords to SVN keywords
svn-id: r20519
2006-02-11 10:10:44 +00:00
Max Horn
0ad58cdb95 Removed .cvsignore files
svn-id: r20424
2006-02-07 22:50:14 +00:00
Paweł Kołodziejski
2ebdbbf5e0 fixes allow compile with emsvc4 again
svn-id: r20355
2006-02-03 07:30:29 +00:00
Eugene Sandulenko
46c961f28d Oops again. Don't beat me hard for plugging in 8800+ glyphs font instead
of 130-glyphs one :)

svn-id: r20327
2006-01-31 03:25:03 +00:00
Eugene Sandulenko
2f33ca6c58 oops. Forgot about our small backends.
svn-id: r20326
2006-01-31 03:15:06 +00:00
Eugene Sandulenko
28753b9fdf Plug in better font. Unfortunately we can't use Arial12 which Krest put on
his mock-ups due to license restrictions, i.e. Microsoft prohibits any
reverse engineering and modifications of it and we need to convert it into
raster font.

Fortunately there are free fonts in the wild. I tried Bitstream Vera, but it
looked too wide, or crappy if horizontal resolution was altered. Next try
was Adobe Helvetica from X.org. Only requirement is to verbose copyright
notice and disclaimer.

However we will need both bold (provided) and normal wieghts of font in new
GUI for use in text inputs. This is work to do.

svn-id: r20325
2006-01-31 03:11:40 +00:00