Age | Commit message (Collapse) | Author | Files | Lines |
|
Conflicts:
src/graphics.h
src/gui/setup_video.cpp
src/gui/specialswindow.cpp
src/gui/viewport.cpp
src/gui/widgets/container.cpp
src/gui/widgets/container.h
|
|
Instead, support for dynamically adjusting layout was added to the
Container class.
Various other places were also adapted to use the new layout support in
Container.
Reviewed-by: Erik Schilling
|
|
Throw away the old layout rather than trying to reuse it and crashing
cause of collisions.
|
|
Hacked Graphics::drawRescaledImage a bit to make it work...
|
|
Moved player status bars to the top-right, next to the window menu. Used
the layout for dynamic adjustments to screen resolution.
|
|
|
|
Also removed all the hardcoded sizes of the various setup tabs. Instead,
support for dynamically adjusting layout was added to the Container
class.
Various other places were also adapted to use the new layout support in
Container.
|
|
|
|
|
|
Mantis-Issue: 423
Reviewed-by: Thorbjørn Lindeijer
|
|
|
|
Also, since GCC 4.7 there is a binary compatibility issue when linking with a
Guichan that was not compiled in C++11 mode. This commit also allows compiling
with GCC 4.7 with C++11 mode turned off.
Reviewed-by: Erik Schilling
|
|
|
|
The tmwa/BeingHandler was adjusting the effect id rather than the emote
id, causing it to not find the last emote (and the rest of the emotes
only worked correctly because the effect ids were consecutive in the same
order as the emote ids).
Furthermore, the EmoteShortcutContainer refused to draw the icon for the
last emote due to an off-by-one error in dealing with the 1-adjusted
emote ids used by the EmoteShortcut class.
Also cleaned up some old remains of a player ignore strategy that used
to use the two balloon emotes (this had been their original purpose).
Reviewed-by: Erik Schilling
|
|
Also added Xcode project for others to compile for Mac OSX.
Reviewed-by: Thorbjørn Lindeijer
|
|
One of the sound channels is reserved for notification sounds, of which the
volume can be configured separately. Currently, the only notification sound
that is played is for receiving whispers. That can be extended later.
The newmessage.ogg sound used currently is the one for receiving a message
with the Psi instant messenger.
Parts of this patch are based on the new message notification in ManaPlus.
Reviewed-by: Erik Schilling
|
|
The filter system added while ago used to override the item slot
true order, even when being empty.
I now made the draw ordering change only when the filter is in use.
Reviewed-by: Thorbjørn Lindeijer
|
|
* Changes were made to the way BrowserBox does colors that the help files
were not adapted to. For example, there is no more ##P for choosing the
previous color and applying a color changes it persistently rather than
returning to default text color after each line wrap. Rather than changing
the behavior of BrowserBox back I've just adapted the help files.
* Set a monospace font on the Help window because this was originally the
case and the text still relies on that for its layout.
* zlib and CSV support was already cherry-picked into 0.5.1 so it is removed
from the 0.6.0 changelog.
Reviewed-by: Erik Schilling
|
|
Reviewed-by: Erik Schilling
|
|
Image::SDLgetScaledImage was changed so that it tries to find an existing
scaled version of the image first, and generates it when none exists.
When it needs to generate one, this resource is added to the resource
manager, partly to avoid duplicating the work later but mainly to keep
memory management straightforward.
This function also used to leak the scaled SDL_Surface since it wrongly
assumed that Image::load would free it.
To avoid filling up the memory with scaled wallpapers that are waiting
30 seconds until they will be deleted, the Resource::decRef function was
extended with a parameter that allows telling it what to do with orphans.
Calling decRef with Resource::DeleteImmediately will delete the resource
immediately in case the resource is orphaned.
Reviewed-by: Yohann Ferreira
|
|
This happened when the emote shortcut config has got too high ids
in it, i.e. when testing different client version on the same host.
Reviewed-by: Erik Schilling
|
|
SDL_ttf provides a separate function for getting the recommended line skip, or
the spacing between two lines of text. When rendering multiple lines of text
this should be used rather than the visual height of the font.
Since the information is only available for TrueTypeFont, a dynamic_cast was
used with a fallback on gcn::Font::getHeight.
Also made some small tweaks but nothing that really affects performance.
Reviewed-by: Yohann Ferreira
|
|
The 'paths' configuration in client-data now overrides any configuration
in 'branding', so that it will apply after the updates for a certain
server have been downloaded.
Also, some isDirectory checks have been removed. When the configuration
is wrong, it's probably better to see that there is a problem.
Reviewed-by: Yohann Ferreira
|
|
One pixel of the scroll bar wasn't visible since the mWidgetContainer
is shifted by one pixel by gcn::TabbedArea::adjustSize, which wasn't
being taken into account by our custom mWidgetContainer sizing code.
Fixed that by just letting Guichan handle it.
Another issue was that the tab scroll arrows were appearing before they
were needed, since they took into account their own size when checking
whether the tabs had enough space.
Finally, a Layout has a default padding of 6 pixels but this is a little
much for the chat window. I reduced it to 3 pixels now.
Reviewed-by: Erik Schilling
|
|
I also made the button not readjust its size when deleted
to avoid a crash.
Reviewed-by: Erik Schilling
|
|
Reviewed-by: Erik Schilling
|
|
|
|
Members that are implemented inline are already inline, there is no need
to mark them as such.
Made two inline members of OpenGLGraphics private since because they are
marked as inline, they can't be used from other classes.
Reviewed-by: Erik Schilling
|
|
Window positions are semi-smartly corrected as a result of the resize.
Not supported when using OpenGL on Windows for now.
Reviewed-by: Yohann Ferreira
|
|
Reviewed-by: Bjorn.
|
|
This was already done by ManaPlus. It's a good idea anyway and it makes
comparing the code a little easier.
Reviewed-by: Yohann Ferreira
|
|
Rather useful when selling items to quickly see what you have in abundance,
rather than only seeing the quantity of the selected item.
Reviewed-by: Yohann Ferreira
|
|
Reviewed-by: Ablu
|
|
This was introduced since Crush updated his mana lib pack.
I simply changed the names to avoid a collision.
Reviewed-by: Ablu.
|
|
I added text shadow and outline support to the browserbox,
and made it adapt the text for the chattabs depending on the
GUI opacity.
Reviewed-by: Ablu.
|
|
The text is never set to an empty string,
especially not while the mouse is over the button.
The popup will be updated or hidden by mouseMoved anyway.
Reviewed-by: Thorbjorn Lindeijer
|
|
* Channel always has a ChannelTab, so need to check it for null
* Removed duplicate handling of 'topic' command
* No need to set Channel::mTab twice
Reviewed-by: Yohann Ferreira
|
|
This was due to a small logic error when setting the popup text.
Reviewed-by: Erik Schilling
|
|
All cases of documentation for non-existing parameters are now fixed.
Also marked a few getters as 'const', removed some superfluous 'inline'
keywords and removed the unused 'forceQuantity' option from
ItemContainer.
Reviewed-by: Yohann Ferreira
|
|
Reviewed-by: Bertram.
|
|
|
|
|
|
And falls back to the text based caption otherwise.
|
|
I also made the client able to keep the old behaviour,
and i changed the button api to not require the icon frames size
as it could easily guess them.
|
|
I added a use of it to the menu buttons.
|
|
Every files has been checked against the hard coded
32 values except the map.cpp file.
I also added convenience functions in the Game class,
centralized the default item icon size, and removed two
unused defines in being.cpp.
|
|
Trivial fix.
|
|
Resolves: Mana-mantis #96.
Reviewed-by: Crush.
Note that the option to set the image position
next to the text is still needed
and will be handled in another issue.
|
|
This event got lost in commit c6a081ba610c5f5f298bc80c2ef28facb41dffae
and made it no longer possible to change the client resolution except by
pressing Enter or Space after selecting an item.
|
|
Just some stuff that piles up while "looking" at the code, which
eventually gets annoying to ignore while staging real changes.
* Replaced a few NULL occurrences with 0
* Rely on default parameter for std::vector::resize.
* Replaced a few "" with std::string()
* Prefer .empty() to == ""
* Removed a few comparisons with NULL
* Don't check pointers before deleting them
* Removed a bunch of redundant semicolons
* Made some global variables static (local to their compilation unit)
* Prefer prefix ++/-- operators to postfix versions when possible
* Corrected location of a comment
|