Maarten ter Huurne
8b17e2ef62
PNG: Make loadPNG() responsible for creating an RGBA surface.
...
Before this commit loadPNG() could return any surface format and the caller
was responsible for converting it to the desired format. However, in practice
all callers want a surface with an alpha channel and SDL only supports that
with 32bpp surfaces, so RGBA or a permutation thereof. So I changed the
contract for loadPNG() so it is required to return an RGBA surface, and
removed the conversion code in the callers.
The next step is to replace IMG_Load() by a function that calls libpng
directly and loads a fixed 32bpp pixel format. That way, we can drop the
SDL_image dependency and avoid unnecessary pixel format conversions.
2011-06-02 06:19:21 +02:00
Maarten ter Huurne
7877fee3fa
Surface: Remove alpha flag.
...
As for SurfaceCollection, the alpha flag passed to the Surface constructor
was also always true. Therefore there is no need to have the flag.
2011-06-02 06:02:45 +02:00
Maarten ter Huurne
44ca4e3460
SurfaceCollection: Removed alpha flag.
...
In the existing code the alpha flag is always true, so there is no point
in passing it around.
2011-06-02 05:52:47 +02:00
Maarten ter Huurne
af3ed78496
Merge branch 'master' of projects.qi-hardware.com:gmenu2x
2011-06-02 05:46:25 +02:00
Sergey Kukunin
240286df11
Add powersaver class
2011-06-02 06:32:39 +03:00
Maarten ter Huurne
52c89d6005
Surface: Removed duplicate constructor.
...
There were two constructors that took an image path, skin name and alpha flag
as their arguments, but in different orders. We need only one of them.
2011-06-02 04:57:21 +02:00
Maarten ter Huurne
b2896d6bac
ASFont: Refactored string drawing methods.
...
Renamed methods that draw a single line from write() to writeLine().
There is now only one write() method left: the public method.
Pass surface to draw on as wrapped Surface instead of SDL_Surface.
At the end of the call chain we still use SDL directly though.
2011-06-02 04:29:19 +02:00
Maarten ter Huurne
b6a5d89bc8
Surface: Removed unused code and restricted access.
...
Removed all methods that are never called.
Made methods that are only called by Surface itself private.
One ugly thing remaining is outside access to the "raw" field.
2011-06-02 03:39:34 +02:00
Ayla
b646c33080
The ./configure will now accept the --enable-platform switch.
...
It takes as its parameter the name of the targeted platform.
Currently, those are nanonote, dingux, pandora, gp2x and pc.
The makefiles will install the data accordingly to the platform specs
(e.g. install the 800x480 skins for the pandora platform).
2011-06-01 01:07:00 +02:00
Ayla
34af938ce1
Moved the pandora's "input.conf" file lying in the top directory to the pandora/data directory, replacing the previous (obsolete) one.
2011-06-01 01:05:14 +02:00
Ayla
47a4e5c3ab
Moved all the data files (translations, skins...) to the "data" folder.
...
On the "platform" sub-folder are located one folder for each platform gmenu2x supports.
The "translations" folder is now the same for all platforms.
The "skins" sub-folder contains directories which names defines the screen resolution of the contained skins (e.g. "320x240").
2011-06-01 00:59:01 +02:00
Xiangfu Liu
b068aa04d4
nanonote: using color font
2011-05-31 09:01:16 +08:00
Xiangfu Liu
6087e23d4d
nanonote: fix setfont path
2011-05-30 09:53:59 +08:00
Xiangfu Liu
e0831be4a3
add color ash shell, add the method to gmenu2x.sh as comment
2011-05-27 21:41:35 +08:00
Maarten ter Huurne
a382a425a9
ASFont: access font pixels efficiently.
...
Previous commit ensures that the font surface is always 32 bpp.
Therefore we can read font pixels directly through a pointer.
2011-05-12 02:10:40 +02:00
Maarten ter Huurne
41e6e4693e
ASFont: only convert font surface if it is not already in a 32bpp format.
2011-05-12 01:20:26 +02:00
Maarten ter Huurne
db5ebff16f
Fixed debug print.
...
GCC 4.5.1 has stricter checking of format strings and refused to compile this.
2011-05-11 02:31:41 +02:00
Maarten ter Huurne
8592038f95
Merge branch 'master' of projects.qi-hardware.com:gmenu2x
2011-05-11 01:37:57 +02:00
Maarten ter Huurne
bff04d2418
ASFont: removed duplication of horizontal alignment code.
2011-05-10 02:43:15 +02:00
Maarten ter Huurne
b4f3cde526
ASFont: merged SFontPlus class into ASFont class.
2011-05-10 02:37:10 +02:00
Maarten ter Huurne
1bc55392cd
ASFont: cleanups in text write methods.
2011-05-10 02:23:13 +02:00
Maarten ter Huurne
ff546cdcb0
ASFont: have a single routine for computing text width that also handles newlines.
...
This way the text has to be scanned only once and no copying is needed.
2011-05-10 02:08:14 +02:00
Maarten ter Huurne
e4b71138b9
ASFont: removed precalculation of half heights.
...
There is no point in precalculating something so cheap to recalculate.
Also, the majority of uses was to compensate for passing the wrong alignment argument.
2011-05-10 00:31:45 +02:00
Ayla
3998e19e49
The log.txt file will now be saved on the user-specific directory.
2011-05-09 19:21:14 +02:00
Maarten ter Huurne
492a36b9df
ASFont: simplified object initialization and cleanup.
...
Do initialization and cleanup in constructor and destructor respectively.
Removed constructors that are not used by gmenu2x.
2011-05-09 14:54:11 +02:00
Maarten ter Huurne
ec5d426d83
ASFont: moved SFontPlus code into ASFont source files.
...
This is in preparation of merging the classes.
2011-05-09 14:25:16 +02:00
Maarten ter Huurne
a35a7e2c35
Introduced enums for text alignment in the ASFont class.
2011-05-09 05:17:25 +02:00
Maarten ter Huurne
c54dec90f5
Minor cleanups in SFontPlus and ASFont.
...
Removed unused includes.
Avoid importing classes into default namespace in headers.
Don't use a type alias if it does not add value.
2011-05-09 04:29:59 +02:00
Maarten ter Huurne
e6be835038
Isolate all PNG loading in a separate source/header.
...
This is in preparation of replacing SDL_image with direct use of libpng.
2011-05-09 03:56:57 +02:00
Ayla
38a83dd385
On the skin menu, the ALTLEFT/ALTRIGHT buttons will now respectively decrease/increase the ARGB values by 10.
2011-04-14 19:35:50 +02:00
Ayla
6cb7ce1c0b
Fixed the renameSection() and deleteSection() functions to use the new directories. The sections can now be renamed and deleted.
2011-04-14 12:08:10 +02:00
Ayla
d0a24ac5ce
Merge branch 'install_locations' of projects.qi-hardware.com:gmenu2x into install_locations
2011-04-14 11:26:24 +02:00
Ayla
6c97139113
The FileLister won't list a file if a previous one has the same file name (without path).
...
This is useful when the files/directories lists are not cleared; then it is possible to define priorities between the files.
For instance, the skin "Default" will be shown only once, even if the directory "Default" exists both in the system and the user directories.
As the skin and translation loading functions does check both directories, there is no problem in doing that.
2011-04-14 11:16:16 +02:00
Maarten ter Huurne
c22cc4d663
Cleaned up link flags.
...
Use the flags found by "configure" and nothing more.
The hardcoded "-lpng12" broke linking with libpng 1.4.
2011-04-13 03:40:36 +02:00
Maarten ter Huurne
23042f3122
Cleaned up link flags.
...
Use the flags found by "configure" and nothing more.
The hardcoded "-lpng12" broke linking with libpng 1.4.
2011-04-13 03:36:47 +02:00
Maarten ter Huurne
f9db1fbd53
Merge remote branch 'origin/master'
2011-04-13 03:14:45 +02:00
Maarten ter Huurne
34a3d55d10
Added missing #include.
...
Fixes compile error when compiling with GCC 4.5.1.
2011-04-13 03:14:10 +02:00
Maarten ter Huurne
8995a3c196
Added missing #include.
...
Fixes compile error when compiling with GCC 4.5.1.
2011-04-13 01:51:23 +02:00
Ayla
f10bb60717
Merge branch 'master' into install_locations
2011-04-12 13:25:00 +02:00
Ayla
ba9fef5c42
The locale configuration will now be saved.
2011-04-12 13:24:35 +02:00
Ayla
12a7fe4e95
The user skin directories were not created when saving the skin.conf file; Thus it was never saved.
2011-04-12 10:19:00 +02:00
Ayla
f2b34f383b
The wallpapers will now be loaded from the system and the user-specific skin directories.
2011-04-12 10:18:10 +02:00
Ayla
f4b03108c1
The "configure skin" will now list all the skins present on the system and the user-specific directories.
2011-04-12 10:16:28 +02:00
Ayla
c18c230f7a
The translations can now be located on the system directory, or on the user-specific directory.
...
The language selector on gmenu2x's settings will list the languages present on both directories.
2011-04-12 09:59:32 +02:00
Ayla
301e16e8ee
Define a default wallpaper path, that will be chosen if no wallpaper is defined on the config.
2011-04-03 11:49:00 +02:00
Ayla
fe25cf341d
The skin images will now be loaded using SurfaceCollection::getSkinFilePath().
2011-04-03 11:45:35 +02:00
Ayla
114fe594d0
The sections directories shall now be found under the user-specific directory.
2011-04-03 11:44:08 +02:00
Ayla
8336c83129
If the "sections/" directory is missing, we create it as well as some default sections (settings, applications...).
2011-04-03 11:34:40 +02:00
Ayla
d8204706d7
The method FileLister::browse() now takes an optional boolean argument.
...
If set to "false", the previous list of files/directories won't be cleared when browsing another directory.
It will allow us to have file choosers that list files contained on different directories.
2011-04-03 11:30:25 +02:00
Ayla
3db5844f3c
The function SurfaceCollection::getSkinPath() will return the path of a skin directory from its name given as a parameter.
2011-03-30 16:15:09 +02:00