|
KiCad PCB EDA Suite
|
Top-level host frame for the 3-way merge resolution dialog. More...
#include <mergetool_frame.h>
Public Attributes | |
| wxString | ancestor |
| wxString | ours |
| wxString | theirs |
| wxString | output |
Top-level host frame for the 3-way merge resolution dialog.
Constructed by the kicad project-manager binary when launched with the --mergetool BASE LOCAL REMOTE MERGED arguments so it can serve as a git mergetool driver. The frame is never Show()n — it exists only to be the wxApp top window so KIWAY-dispatched modal dialogs have a valid parent and so the wxApp event loop has a handler to drive.
The launcher in kicad.cpp queues RunMerge() via wxCallAfter so the merge starts after the event loop is up. RunMerge inspects the output extension and calls the owning kiface's interactive merge export (KIFACE_MERGE_DOCUMENT via KICAD_DIFF::DispatchMerge) with the interactive flag set, storing the exit code in m_exitCode. The launcher then schedules the loop exit with that code so the kicad process exit status reflects the merge result for git mergetool. Bundle of the four input paths so the call sites can't accidentally permute git's BASE/LOCAL/REMOTE/MERGED ordering — all four would otherwise be same-typed wxStrings.
Definition at line 50 of file mergetool_frame.h.
| wxString MERGETOOL_PATHS::ancestor |
Definition at line 52 of file mergetool_frame.h.
| wxString MERGETOOL_PATHS::ours |
Definition at line 53 of file mergetool_frame.h.
| wxString MERGETOOL_PATHS::output |
Definition at line 55 of file mergetool_frame.h.
| wxString MERGETOOL_PATHS::theirs |
Definition at line 54 of file mergetool_frame.h.