patchGNU Robots - Patches: patch #9956, Overhaul2 Patch

 
 

patch #9956: Overhaul2 Patch

Submitter:  Matt Henry <mcthenry>
Submitted:  Fri 17 Jul 2020 09:50:07 PM UTC
   
 
Category:  None Priority:  5 - Normal
Status:  None Privacy:  Public
Assigned to:  None Open/Closed:  Open
* Mandatory Fields

Add a New Comment Rich Markup
   

Sun 14 Feb 2021 09:18:04 PM UTC, comment #1: 

Uploaded into git as the overhaul2 branch.

Matt Henry <mcthenry>
Group Member
Fri 17 Jul 2020 09:50:07 PM UTC, original submission:  
  • Version: bumped the version to 1.3.0
  • Code: Refactored code to reduce dependencies (much less of a web of #includes)
  • Code: Removed unneeded imports
  • Code: Compiler warnings reduced through appropriate casting
  • Code: Marked functions as static if only used in local .c file
  • Code: Refactored file searching in main.c into a function using the environment variable and the #define from configs.h
  • Code: G_ADD_PRIVATE being used for private data throughout (eliminates compiler warnings for deprecated features and standardizes on latest method).
  • Code: Signals are now the only means of communication between the UI and the Map and Robot objects (no calling from unexpected threads)
  • Commandline: modified GNU Robots to use GOption commandline processing.
  • Commandline/GTK: modified GNU Robots to accept (and process) standard GTK commandline options.
  • GUI: updated GNU Robots to GTK3
  • GUI: Added a menu bar containing File/Open Map; File/Quit; Scheme/Interrupt and Help/About
  • GUI: user can load a map using a GTK+ file picker widget
  • GUI for robot statistics updated to use a normal GTK+ widget. Robot statistics show deltas using color to highlight up/down changes in the quantity.
  • GUI: Delay is now done in the api.c file rather than in grobot.c.
  • GUI: Cairo is now being used for the arena drawing (the old PixMap method is deprecated)
  • GUI: Map filename is now being displayed in the GUI
  • GUI: Animation is now done using timers (no more sleeping on the GUI thread).
  • Scheme/Build: Configured to prefer Guile 2.2 and fall back to 2.0.
  • Scheme/GUI: added a menu option to allow the user to interrupt scheme code.
  • Scheme: added a new function robot-set-move-delay! to turn on/off the move delay.
  • Scheme: added getters for base action costs (e.g. robot-get-move-energy-cost).
  • Scheme: added getters for robot statistics (e.g. robot-get-energy).
  • Map Files: maps can now specify one or more locations where they want the robot to spawn (it doesn't always have to be (1, 1)) by putting an R in the location.
  • Map: maps can now support orientation for any thing (sets the stage for moving baddies, bullets, missiles, whatever).
  • Documentation: added texi documentation (can build .info files, .html files, ...), including adding Invoking gnurobots, function and concept indices, ...
  • Documentation: added doxygen-style documentation to grobot.c, grobot.h and map.h


Matt Henry <mcthenry>
Group Member

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach Files:
   
   
Comment:
   

Attached Files
file #49503:  overhaul2.patch added by mcthenry (229KiB - text/x-patch)

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by mcthenry (Submitted the item)
  •  

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

    Only logged-in users can vote.

     

    Follow 3 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2020-07-18 mcthenry Attached File- Added Screenshot@from@2020-07-18@16-02-03.png, #49508
        Attached File- Added Screenshot@from@2020-07-18@16-48-03.png, #49509
    2020-07-17 mcthenry Attached File- Added overhaul2.patch, #49503

    Back to the top

    Powered by Savane 3.13-02a9.
    Corresponding source code