Pokered Save Editor 2
Pokemon Red & Blue save file editor - Qt 6 C++/QML
Loading...
Searching...
No Matches
Version History — June 2019

← All months (index) · 71 commit(s) this month.


2019-06-30 – It compiles and runs (untested)

00ecbd5 - Twilight

Gets the C++ models building and running cleanly again, though nothing's been tested yet.

2019-06-30 – QVariant can't be a QHash value (another Qt gotcha)

476ba72 - Twilight

Works around the discovery that QVariant can't be used as a QHash value, switching toward QString. The message is a long vent about repeated Qt surprises costing days of rework.

2019-06-30 – Complete the major model refactor (untested)

8c9a099 - Twilight

Finishes a big restructuring of the C++ models (with the old versions archived as model.OLD), acknowledged as untested and likely error-prone.

2019-06-29 – Refactor BaseModel, Move, Item, Type

303d4cf - Twilight

Reworks the base model and the move/item/type models into their new form.

2019-06-29 – Begin the major refactor and cleanup

5bb558f - Twilight

Starts the model refactor, introducing the split base-model headers and reworking the item model.

2019-06-27 – Prepare to refactor and try again (Qt gotchas)

93b7eb1 - Twilight

Archives the current models as model.OLD ahead of another rethink forced by newly-discovered Qt/QML limitations.

2019-06-27 – Rename vars.h to types.h

5337f29 - Twilight

A rename of vars.h to the more accurate types.h.

2019-06-27 – Qt's walled garden forces another rethink

99188ed - Twilight

More Qt-integration friction: QML/C++ interop requires Qt-ecosystem objects, and Qt's ecosystem doesn't accept modern C++ that compiles fine outside it – meaning another rethink. The message is openly frustrated and near to calling it quits, but not yet.

2019-06-27 – Rough conversion of models to Q_OBJECTs

ea7f218 - Twilight

A messy first pass making the item/move/pokemon/type models into QObjects.

2019-06-27 – Try Q_OBJECT and Q_PROPERTY again

62814a9 - Twilight

Another attempt at the QObject/Q_PROPERTY approach, with the caveat it may need reverting.

2019-06-27 – More work finalizing the store

a9c81b8 - Twilight

Final touches on the Pokemon database store, while figuring out how to test it.

2019-06-26 – Modernize deep-link code to use the store

b3930a2 - Twilight

Rewrites the item/move deep-link code to use the new store database, cutting a lot of boilerplate.

2019-06-26 – Add deep linking to Pokemon

d7b9ed2 - Twilight

Adds cross-linking to the Pokemon model.

2019-06-26 – Add deep linking to the Move model/store

d034a24 - Twilight

Adds cross-linking to the move model.

2019-06-26 – First deep-link method for the Items model

a20bea3 - Twilight

Adds the first cross-link method to the item model.

2019-06-26 – Fix comment typos

893b0af - Twilight

A one-line comment typo fix in the base model.

2019-06-26 – Add de-evolution property

59b5e9a - Twilight

Adds a de-evolution property to the Pokemon-evolution model.

2019-06-26 – Add store DB index to the rest of the models

282e3a3 - Twilight

Extends the store's database index to the move, pokemon and type models.

2019-06-26 – First store DB indexing (in-memory JSON DB)

207614a - Twilight

Adds the first database indexing in the store – the next stage of loading the JSON data into an in-memory database.

2019-06-25 – Clean up includes

29c87a3 - Twilight

Tidies header includes across the models.

2019-06-25 – Add static stores and stage-1 init

4ddc805 - Twilight

Adds static store containers and the first-stage initialization to each model.

2019-06-25 – Cross-reference Pokemon TMs to items

ef7cdcf - Twilight

Adds the Pokemon-to-TM-item cross-reference (alongside the existing moves) and the related resets.

2019-06-25 – Add forgotten resets

45b5093 - Twilight

Adds a few reset calls that had been left out of the item model.

2019-06-25 – Rename "normal" to "glitch" item

1af1ed1 - Twilight

Renames the item model's "normal" flag to "glitch" for clarity.

2019-06-25 – Use forward declarations instead of full includes

6a56965 - Twilight

Switches some headers to forward declarations rather than full inclusion.

2019-06-25 – Add item-to-moves linking to the data model

cfbd04b - Twilight

Adds the item-to-moves cross-link to the item model.

2019-06-25 – Begin inter-linking variables

486235b - Twilight

Starts adding the cross-linking fields across the item/move/pokemon models.

2019-06-25 – Large model-data upgrade (read-only externally)

c9e9c52 - Twilight

A big model upgrade: data becomes externally read-only / internally read-write, switches from QVector to std::vector, adds init functions so models/data can be reused, and leans heavily on references.

2019-06-25 – Fill in PokemonData extraction

944f177 - Twilight

Fills in more of the Pokemon-data extraction, this time complete for the parts covered.

2019-06-24 – Slight code modernization

5d55791 - Twilight

A small modernization of the file-management code.

2019-06-24 – Make the default integer type a full 8-bit

da8bfa7 - Twilight

Changes the default integer type from the "small" 8-bit to a full 8-bit and updates the code to match.

2019-06-24 – Make 8-bit the implicit default in type aliases

192b080 - Twilight

Drops the need to spell out 8-bit in the type aliases (with extra aliases) and updates the codebase.

2019-06-24 – Note on save-data stack space

b3e9893 - Twilight

Adds a documentation note about stack space in the raw save-data header.

2019-06-23 – Modernize alias typedefs

34514f2 - Twilight

Updates the type-alias typedefs to modern C++ syntax.

2019-06-23 – Externalize complex constants

02885e1 - Twilight

Moves complex constants so there's only a single in-memory copy.

2019-06-23 – Use ++i instead of i++

d75660e - Twilight

A micro-optimization switching post-increment to pre-increment in a loop.

2019-06-23 – Fix a constant initializer

8c7a486 - Twilight

Uses initializer syntax rather than assignment for a compile-time constant.

2019-06-23 – Fix compile-time defines to real constants

83b4649 - Twilight

Converts some compile-time #defines into proper constants.

2019-06-23 – Add standardized integer typedefs

8be430e - Twilight

Introduces standardized integer-type typedefs based on the three sets of STL integer types, used across the data and model code.

2019-06-23 – Use std::uint_least8_t for data models

ed31528 - Twilight

Moves the models from quint8 to C++11 std::uint_least8_t for portable smallest-near-8-bit storage.

2019-06-23 – Move to C++11 initializers

3cdde6e - Twilight

Switches the file-management and main-window code to C++11 initializer syntax.

2019-06-22 – Fix issues that should have been caught earlier

95621a5 - Twilight

Fixes a few small issues that had silently been wrong despite the build appearing fine.

2019-06-22 – Rough WIP on the store

5ebc31c - Twilight

Early work-in-progress on the Pokemon database store.

2019-06-22 – Begin JSON importing

4686786 - Twilight

Starts importing the JSON data into the models, noting a coming refactor for C++17 optional members.

2019-06-22 – Q_OBJECT classes -> plain structs in the Meta system

42da8d7 - Twilight

Converts the const-member QObject-derived models into basic structs registered with Qt's meta object system, shedding a lot of boilerplate.

2019-06-22 – Upgrade to C++17

3593e07 - Twilight

Bumps the project to C++17 to use features like std::optional.

2019-06-22 – Begin the Pokemon Database (models + JSON)

0afe8e7 - Twilight

Starts the Pokemon database store that ties the models and JSON data files together.

2019-06-22 – Got it working (with a small compromise)

8fa9dca - Twilight

Gets the models working as intended at last, settling for a small compromise to work around a Qt/C++ snag.

2019-06-22 – Resume the C++ data-modeling approach

cc34283 - Twilight

Picks the C++ data-modeling back up from a different direction.

2019-06-22 – Re-apply the first wave of Pokemon data

a6e94b7 - Twilight

Reinstates the first-wave Pokemon model integration (a revert-of-a-revert), restoring the base/item/move/pokemon/type models.

2019-06-21 – Revert the JSON data-structures work

4b774d5 - Twilight

Backs out the early mondatabase JSON data-structure scaffolding.

2019-06-21 – Revert the first-wave Pokemon data

1cddf37 - Twilight

Temporarily removes the first-wave Pokemon model integration (later re-applied in a6e94b7).

2019-06-21 – Revert the Q_PROPERTY note

e97eab7 - Twilight

Removes the note added in the commit below.

2019-06-21 – Note on why the model can't have Q_PROPERTYs

bceb15e - Twilight

Adds a code note explaining why Q_PROPERTYs can't go on the model – frustrating, since they were wanted and needed there (reverted just above).

2019-06-21 – Integrate the first wave of Pokemon data

14d58f0 - Twilight

The first integration of the Pokemon data into the C++ models (later reverted, then restored).

2019-06-20 – Begin the JSON data structures

6a2ab9c - Twilight

Starts the mondatabase data structures for the JSON data (later reverted).

2019-06-20 – Reorganize files into folders

ad32673 - Twilight

Sorts the source into data/ and view/ folders.

2019-06-20 – Add lots of JSON Pokemon data

f1cf4d3 - Twilight

Adds the bulk of the raw JSON game data (~36,000 lines): pokemon, moves, items, maps, events, trainers, types, names and more – the data foundation the whole project is built on.

2019-06-20 – Add window geometry saving/loading

7a6e87d - Twilight

Saves and restores the main window's size/position between runs.

2019-06-20 – Default the file dialog to the last path

b2701c1 - Twilight

Uses the last-used path when no path is set, for the open/save dialogs.

2019-06-20 – Pass the main window pointer for dialogs

328bc39 - Twilight

Gives the file-management code a reference to the main window so it can parent its dialogs.

2019-06-20 – Window title reflects the loaded save

ddd2e76 - Twilight

Replaces the default window title with one showing the currently loaded save file.

2019-06-20 – Fix the recent-files list

2090b4e - Twilight

Fixes issues with the recent-files list.

2019-06-19 – Still working on recent files

3d84411 - Twilight

Continued work getting the recent-files handling right.

2019-06-19 – Move Alt+F4 into the UI file

f410aec - Twilight

Moves the Alt+F4 (quit) handling into the .ui form.

2019-06-19 – Switch from a Qt Quick Window to a native MainWindow

49594d7 - Twilight

A formative early decision: moves out of a Qt Quick Window into a proper MainWindow, and puts the menu in the main window for a far more native feel than the previous "web page"-like menu.

2019-06-19 – Remove the old QML menu

bea7d03 - Twilight

Removes the QML AppMenu ahead of doing the menu in a more native way.

2019-06-19 – Reorganize class accessibility

ac658d9 - Twilight

Adjusts how classes are exposed for better separation of concerns.

2019-06-19 – Initial files with sample UX

1ff31c1 - Twilight

The first real code: file management, raw save-data handling, and a sample QML UX (app menu, navigation, main) – the seed of the entire editor.

2019-06-19 – Migrate icons from PokeredSaveEditor 1

ceb3f5f - Twilight

Brings the application icons over from the original (version 1) editor.

2019-06-19 – Initial Commit

6aa6445 - Twilight

Where it all began: the repository's first commit, adding the .gitignore, LICENSE, and README.