close
Comments you submit will be routed for moderation. If you have an account, please log in first.
Modify

Opened 2 years ago

Last modified 15 months ago

#319 accepted task

Complete overhaul of global configuration implementation

Reported by: damato Owned by:
Priority: normal Milestone: YAM future release
Component: configuration Version:
Severity: major Keywords:
Cc: OS Platform:
Blocked By: Blocking: 142
Release Notes:

Description

Phenomenon

The current configuration soley relies on a global "struct Config" structure which is directly accessed from throughout the whole YAM source code. This has several drawbacks and should be completely changed.

Background analysis

First of all the current configuration source code (including the GUI part) should be changed into an internal MUI custom class (using GenClasses). Then struct Config should be abadoned and instead accessor and mutator functions be added to retrieve and set the values of a certain config option (e.g. via string-based config option names). Furthermore, the configuration structure should carry information about the type (boolean, integer, string, etc.) of the variable so that the Load and Save config function can interate through this structure getting rid of the tons of "else if()" branches currently implemented in YAM_COs.c.

Implementation recommendation

Take care of:

  • Custom classes
  • Hash tables uses
  • Black box approach

Attachments (0)

Change History (2)

comment:1 Changed 15 months ago by damato

  • Milestone changed from YAM 2.9 to YAM future release

comment:2 Changed 15 months ago by damato

  • Status changed from new to accepted

Add Comment

Modify Ticket

Action
as accepted .
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.

This list contains all users that will be notified about changes made to this ticket.

These roles will be notified: Reporter, Owner, Subscriber

  • Jens Maus(Reporter, Participant)