Commit Graph

49067 Commits

Author SHA1 Message Date
Ignacio R. Morelle
3613a09872 addon/mg: Move addons_list generation logic to addon/info 2012-02-25 04:25:30 +00:00
Oleg Tsarev
f90bf86bca Now deleted game removed from index too 2012-02-25 04:14:53 +00:00
Oleg Tsarev
deaf1c0c3c Fixed bug #19495: stderr spam about missing savefiles 2012-02-25 04:14:41 +00:00
Fabian Müller
745cdd55a8 Classes for handling map label placement in the editor. 2012-02-25 03:00:08 +00:00
Ignacio R. Morelle
ed956d99b2 addon/mg: Remove orphaned typedef 2012-02-25 02:51:47 +00:00
Ignacio R. Morelle
7a1863124a addon/mg: Remove exception type orphaned by 2012-02-25T02:06:18Z!shadowm@wesnoth.org 2012-02-25 02:51:32 +00:00
Ignacio R. Morelle
7b16b67e80 addon: Rename get_addon_info() and set_addon_info()...
...to better reflect their function

They have been renamed to get_addon_pbl_info() and set_addon_pbl_info(),
respectively. This also makes sense given the existing have_addon_pbl_info()
function.
2012-02-25 02:45:35 +00:00
Ignacio R. Morelle
21f5c99e55 addon/client: Prettify add-on ids for status display...
...when .title is missing in the .pbl
2012-02-25 02:41:59 +00:00
Ignacio R. Morelle
86eb697cd9 addon/client: Use the standard parser.cpp write() function...
...to generate _info.cfg

Through addon_info::write() we can get rid of the previous, annoying
variable interpolation hack and generalize more logic.  Instead of using
the parser.cpp write() function on a file stream, we use a string stream
whose contents are inserted into the add-on archive before unpacking, as
usual.
2012-02-25 02:25:54 +00:00
Ignacio R. Morelle
a9b1e42e31 addon/info: Implement write() method, to serialize data back to WML 2012-02-25 02:25:39 +00:00
Ignacio R. Morelle
ce938dd0dc addon/mg: Remove GUI1 callpath left-over in uninstall_local_addons() 2012-02-25 02:06:51 +00:00
Ignacio R. Morelle
ad75fae11a addon/mg: Minor refactoring on manage_addons() and uninstall_local_addons()
* Both functions and their support elements are now in manager_ui.cpp

 * We no longer use an exception to signal the need to refresh the WML
   cache back to the game controller

 * We no longer pass a pseudo-optional pointer to bool around
2012-02-25 02:06:18 +00:00
Steven Panek
adb3e1ad49 Updated the Ukrainian translation. 2012-02-24 22:44:27 +00:00
Nils Kneuper
c59c0f2a2b updated Polish translation 2012-02-24 20:59:59 +00:00
Ignacio R. Morelle
b2795ea838 addon/info: Documentation fix 2012-02-24 18:19:05 +00:00
Ignacio R. Morelle
c191f3ee69 addon/info: Update dependencies list before descending further into the tree
This should make circular dependencies be handled as intended.
2012-02-24 18:13:59 +00:00
Ignacio R. Morelle
af5c345689 addon/mg: Better fix for builds with non-GNU C++ STL than 2012-02-24T17:43:46Z!anonymissimus@arcor.de
The point of the at() member call was to throw an exception if the
access was invalid. By using find() without checking, we could end up
dereferencing the end iterator of the addons_list. Thus, a helper
function has been added now to use an assertion to protect against that
hypothetical situation early enough.
2012-02-24 18:13:43 +00:00
Anonymissimus
91a7040013 VC9 projectfile update 2012-02-24 17:44:29 +00:00
Anonymissimus
bf608d34a2 CB projectfile update 2012-02-24 17:44:05 +00:00
Anonymissimus
11376e42f0 Replace some calls to map::at() with a map::find() workaround (fix for compilation in MSVC)
compilation error I got: "at() not a member of std::map". std::map::at()
seems to be gcc (Linux and MinGw) - only. At least it's not listed
here for instance: http://www.cplusplus.com/reference/stl/map/
2012-02-24 17:43:46 +00:00
Anonymissimus
17c3b5580e change inclusion order
(workaround for compilation errors on windows (MSVC&MinGw))

These were seemingly the same errors/problem as worked around
by me in 2012-02-04T02:59:11Z!anonymissimus@arcor.de. Also, still pretty clueless about it.
2012-02-24 17:43:30 +00:00
Lari Nieminen
32b1f7132c Updated changelog. 2012-02-24 12:31:47 +00:00
Lari Nieminen
d760974ef7 Replaced wolf-hit-1.ogg with a lower-pitched sound...
...and removed wolf-hit-4.ogg from the wolf hit sound list.
2012-02-24 11:52:55 +00:00
Sergey Popov
6ab1b1c5ab scons: made boost autodetection look for lib files in prefix/lib64 too
This will make it unnecessary to pass boost_suffix=-mt on 64-bit Fedora
2012-02-24 09:41:00 +00:00
Steven Panek
be56f8085d Updated the Latin translation. 2012-02-24 08:14:47 +00:00
Steven Panek
f223fa8095 Updated the Old English translation. 2012-02-24 08:06:25 +00:00
Ignacio R. Morelle
fbb4f4f273 addon/mg: Don't use game_display class where display is enough 2012-02-24 07:56:36 +00:00
Ignacio R. Morelle
9927e9dcf1 Escape markup characters at the start of add-on titles...
...in the add-ons management dialogs

Forward-ported from 1.10 @ 2012-02-24T07:38:40Z!shadowm@wesnoth.org solely for the sake of completeness.
2012-02-24 07:46:13 +00:00
Steven Panek
95c37976e3 Updated the Spanish translation. 2012-02-24 07:33:02 +00:00
Ignacio R. Morelle
81e9418061 Add-ons client: Move the Description button above Updates All...
...when applicable
2012-02-24 07:18:15 +00:00
Ignacio R. Morelle
ced538268f Add-ons client: reduce log severity 2012-02-24 07:18:04 +00:00
Ignacio R. Morelle
788d99e4f7 Add-ons client: Remove commented-out leftovers...
...of the manager UI dialog description
2012-02-24 07:17:49 +00:00
Steven Panek
2fff617576 Updated the Spanish translation. 2012-02-24 07:12:37 +00:00
Ignacio R. Morelle
ea93e3caf1 gui2/taddon_description: Use fixed icons from addon_info
Regression caused by 2012-02-24T06:45:15Z!shadowm@wesnoth.org.
2012-02-24 07:06:21 +00:00
Ignacio R. Morelle
9137a88b58 Add-ons client: Big refactoring step 3
This is a very large step and it's most likely not exempt of
regressions, hence I decided to push it as soon as possible so it can
receive more testing before 1.11.0. Please read the full commit message
in SVN to see what changed, instead of just the CIA version.

A changelog entry will be coming eventually, just shortly before 1.11.0
in order to give me time to finalize many other ongoing and pending changes.

Overall changes:

 * Moved most of the GUI1-dealing code to manager_ui.?pp, and rewrote
   substantial parts of it for better code cohesion.

 * The Get Add-ons and Update Add-ons dialog share most of their code, so
   they are effectively one and the same now.

 * The behavior of the add-ons dependencies resolution code has changed;
   broken dependencies (i.e. add-ons not found in the server) are
   reported properly, and the base dependant is always downloaded _before_
   its dependencies.

 * The add-ons menu dialog no longer has the trivial description text
   taking up space above the Filter box.

 * When only displaying add-ons that can be upgraded, there is now a
   Description button as usual, and add-ons with .pbl information or
   lacking _info.cfg data are exempt from listing.

 * The underpinnings of an add-on status classification (i.e. installed,
   installed+outdated, installed+upgradable, broken, not tracked) have
   begun to appear, and will be used for improving the add-ons menu and
   later implementing more dependency tiers (required, recommended,
   conflicts) in both server and client side.

 * Some translatable strings were changed along the way.

 * Add-ons are now always sorted by their ids (not titles, though)
   thanks to the introduction of a parsed add-ons list generated from
   the server's WML reply. This should help eliminate upload races
   traditionally occuring when an add-ons server instance in wesnoth.org
   has been newly started.

 * Some codepaths (check_whether_overwrite() and addon_dependencies_met()
   in particular) were greatly improved with more proper usage of our
   available infrastructure, and the C++ language itself. Furthermore,
   checking whether an add-on is already installed is not a costly
   operation anymore and it's implemented by a unique function instead
   of several algorithms scattered throughout everywhere.

Known problems:

 * The GUI2 codepath is entirely orphaned and I'll evaluate later
   whether to reconcile it or replace it entirely with a new
   experimental GUI2 front-end. This means --new-widgets has no effect
   on the Add-ons Manager code anymore, for now.

 * The GUI2 Uninstall Add-ons dialog is still in the original code unit
   and needs to be moved soon.

 * Some code (such as the add-on status tracking code) will be
   refactored further later.

 * Quite a few TODOs and FIXMEs still exist, or were newly introduced
   with this.

 * It needs to become about 20% cooler at a minimum before 1.11.0.

 * Recursive dependency tree handling may need further testing.
2012-02-24 06:45:15 +00:00
Ignacio R. Morelle
3501b330bd Add-ons client/server: Generalize conversion from/to enum...
...type representation of add-on type identifiers

This involves a rather C-ish approach I don't really like, using a
constant table of strings with fixed positions that can be translated to
enum members. I'm open to alternatives.

Also introduced a get_addon_type_string() function that will be used by
the new add-ons manager code for a short while.
2012-02-24 06:45:03 +00:00
Ignacio R. Morelle
e728bbd82b Add-ons client: teach addon_info struct new tricks
* It can now store dependency lists that can be recursively resolved
   into full trees, fixing circular and self-refering dependencies if
   necessary.

 * It now stores its own add-on id.

 * It now allows for retrieving a "fixed" version of the icon field with
   the habitual fix-ups for broken add-on icons (a placeholder image in
   debug mode, TC for unit baseframes without image path functions);
   this is used by GUI front-ends.
2012-02-24 06:44:50 +00:00
Anonymissimus
e0958f0e3b Gendrify a message. (fix for bug #19367) 2012-02-24 01:15:00 +00:00
Fabian Müller
ff243c7036 Removed left over debug output. 2012-02-23 21:47:45 +00:00
Anonymissimus
fe8ce4d3e2 fix an MSVC warning about unreferenced local variable 2012-02-23 21:32:31 +00:00
Fabian Müller
099156218f magic number 2012-02-23 20:59:48 +00:00
Fabian Müller
177b197a5e Removed extra quoting for map strings. 2012-02-23 20:58:10 +00:00
Nils Kneuper
f2c57077a0 updated Chinese (Simplified) translation 2012-02-23 16:48:32 +00:00
Nils Kneuper
dfb41ea016 updated French translation 2012-02-23 09:57:01 +00:00
Nils Kneuper
7cd22d7560 updated Irish translation 2012-02-23 06:59:21 +00:00
Simon Forsyth
68dc23cd0b Mark [map] as a handled tag to avoid Lua error 2012-02-23 03:45:20 +00:00
Fabian Müller
0b107d39bf Implemented a better way to see if a file contains wml. 2012-02-23 03:15:05 +00:00
Fabian Müller
a8aa81f338 Now realy introduced the new map format. 2012-02-23 02:39:58 +00:00
Fabian Müller
1a27a8cb08 Introduced new [map] format. 2012-02-23 02:39:11 +00:00
Simon Forsyth
7f5f6296f5 remove newly unused function 2012-02-23 02:33:39 +00:00