20#ifndef PANEL_GIT_STASHES_H
21#define PANEL_GIT_STASHES_H
The base frame for deriving all KiCad main window classes.
The advanced Git window: a non-modal dialog with a top bar naming the repository and branch and a sid...
Read repository state without blocking the UI.
PANEL_GIT_STASHES_BASE(wxWindow *parent, wxWindowID id=wxID_ANY, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxSize(-1,-1), long style=wxTAB_TRAVERSAL, const wxString &name=wxEmptyString)
int m_stashSashPos
Where the user left the sash between the list and its detail pane.
void showStashDetail(const wxString &aId)
Fill the detail pane with the stash aId names, or hide it when the id is empty or gone.
void Populate()
Fill the list from the repository's stashes. The repository is read on a worker.
wxString stashIdForRow(long aRow) const
The stash shown on aRow, by its commit, or empty when the row is gone.
PANEL_GIT_STASHES(wxWindow *aParent, GIT_ADVANCED_DIALOG *aDialog, EDA_BASE_FRAME *aFrame)
KIGIT_QUERY m_listQuery
List and detail reads share the session lock without waiting on the UI thread.
KIGIT_QUERY m_detailQuery
void checkStashChanges()
After saving the editors, read the changes before asking for a stash description.
std::vector< wxString > m_stashIds
The stash commit behind each row, since a row's index is only valid for the listing it came from.
void restoreSelectedStash(bool aRemoveAfterApply)
bool m_fillingStashes
True while the list is being refilled, when its selection events are its own.
GIT_ADVANCED_DIALOG * m_dialog
KIGIT_QUERY m_actionQuery
Reads needed before an action's confirmation, separate from list refreshes.
void fillStashDetail(const KIGIT_STASH_DETAIL &aDetail)