Difference between revisions of "GUIToolkit"

From The Battle for Wesnoth Wiki
m (Fix heading markup)
(7 intermediate revisions by 3 users not shown)
Line 1: Line 1:
UNDER CONSTRUCTION DO NOT MODIFY -- SkeletonCrew
+
== Introduction ==
  
= Introduction =
+
This is a new toolkit aiming to make it possible to make the look of Wesnoth fully skinnable.
 
 
This is a new toolkit aiming to make it possible to make the look of Wesnoth fully skinable.
 
 
This will be used in Wesnoth the make it easier to optimize for different screen resolutions.
 
This will be used in Wesnoth the make it easier to optimize for different screen resolutions.
 +
The initial work in progress version has been released with Wesnoth 1.6. Since the development
 +
isn't done yet, these pages reflect the state of the trunk.
  
 
The engine has two parts:
 
The engine has two parts:
 
* Widget definition, which defines how a widget looks.
 
* Widget definition, which defines how a widget looks.
* Window defintion, which defines how a certain window looks and it uses the widget definitions.
+
* Window definition, which defines how a certain window looks and it uses the widget definitions.
  
 +
== Todo list ==
 +
Here's a(n incomplete) list of items which still need to be done.
 +
* The layout engine can still have problems with not finding a solution and stop.
 +
** Make sure labels buttons etc can shrink and show ellipses to shrink small enough
 +
** Optimize the shrink algorithm
 +
* The code for the events is not entirely to my liking and I want to look at using signals instead, events are there bug not yet used everywhere.
 +
* [[EasyCoding#GUI2_related_features]]
 +
* Improve the markup for the text
 +
* Convert more dialogs
  
= Links =
+
== Links ==
 
* [[GUIVariable]] describes the variable used for the parts of WML.
 
* [[GUIVariable]] describes the variable used for the parts of WML.
 
* [[GUILayout]] describes how to place widgets in a window.
 
* [[GUILayout]] describes how to place widgets in a window.
 
* [[GUIWidgetDefinitionWML]] describes how the various widgets are defined.
 
* [[GUIWidgetDefinitionWML]] describes how the various widgets are defined.
 +
* [[GUIWidgetInstanceWML]] describes the options which can be used when a widget is "instantiated" in a window definition.
 +
* [[GUIWindowDefinitionWML]] describes the windows available and which widgets the 'know' about.
 
* [[GUIToolkitWML]] describes the basics of the engine.
 
* [[GUIToolkitWML]] describes the basics of the engine.
 
* [[GUICanvasWML]] describes what to draw on a widget.
 
* [[GUICanvasWML]] describes what to draw on a widget.
 
* [[Wiki_grabber]] describes the tool to generate the wiki pages.
 
* [[Wiki_grabber]] describes the tool to generate the wiki pages.
  
= See also =
 
* [[GUICanvasWML]]
 
  
 
[[Category:WML Reference]]
 
[[Category:WML Reference]]
 
[[Category: GUI WML Reference]]
 
[[Category: GUI WML Reference]]

Revision as of 16:23, 29 August 2017

Introduction

This is a new toolkit aiming to make it possible to make the look of Wesnoth fully skinnable. This will be used in Wesnoth the make it easier to optimize for different screen resolutions. The initial work in progress version has been released with Wesnoth 1.6. Since the development isn't done yet, these pages reflect the state of the trunk.

The engine has two parts:

  • Widget definition, which defines how a widget looks.
  • Window definition, which defines how a certain window looks and it uses the widget definitions.

Todo list

Here's a(n incomplete) list of items which still need to be done.

  • The layout engine can still have problems with not finding a solution and stop.
    • Make sure labels buttons etc can shrink and show ellipses to shrink small enough
    • Optimize the shrink algorithm
  • The code for the events is not entirely to my liking and I want to look at using signals instead, events are there bug not yet used everywhere.
  • EasyCoding#GUI2_related_features
  • Improve the markup for the text
  • Convert more dialogs

Links