# eric7.Plugins.VcsPlugins.vcsGit.GitStashBrowserDialog

Module implementing a dialog to show the stashes.

### Global Attributes

None

### Classes

GitStashBrowserDialog | Class implementing a dialog to show the stashes.

### Functions

None

## GitStashBrowserDialog

Class implementing a dialog to show the stashes.

### Derived from

QWidget, Ui_GitStashBrowserDialog

### Class Attributes

DateColumn
FileStatisticsRole
MessageColumn
NameColumn
Separator
TotalStatisticsRole

### Class Methods

None

### Methods

GitStashBrowserDialog | Constructor
__apply | Private slot to apply the selected stash but keep it.
__branch | Private slot to create a branch from the selected stash.
__clear | Private slot to delete all stashes.
__drop | Private slot to delete the selected stash.
__finish | Private slot called when the process finished or the user pressed the button.
__generateStashEntry | Private method to generate the stash items.
__getStashEntries | Private method to retrieve the list of stashes.
__pop | Private slot to apply the selected stash and delete it.
__procFinished | Private slot connected to the finished signal.
__processBuffer | Private method to process the buffered output of the git stash command.
__readStderr | Private slot to handle the readyReadStandardError signal.
__readStdout | Private slot to handle the readyReadStandardOutput signal.
__resetUI | Private method to reset the user interface.
__resizeColumnsStashes | Private method to resize the shelve list columns.
__showPatch | Private slot to show the contents of the selected stash.
closeEvent | Protected slot implementing a close event handler.
keyPressEvent | Protected slot to handle a key press event.
on_buttonBox_clicked | Private slot called by a button of the button box clicked.
on_input_returnPressed | Private slot to handle the press of the return key in the input field.
on_passwordCheckBox_toggled | Private slot to handle the password checkbox toggled.
on_refreshButton_clicked | Private slot to refresh the list of shelves.
on_sendButton_clicked | Private slot to send the input to the git process.
on_stashList_currentItemChanged | Private slot called, when the current item of the stash list changes.
on_stashList_customContextMenuRequested | Private slot to show the context menu of the stash list.
show | Public slot to show the dialog.
start | Public slot to start the git stash command.

### Static Methods

None

#### GitStashBrowserDialog (Constructor)

GitStashBrowserDialog(vcs, parent=None)

Constructor

vcs
  reference to the vcs object
parent
  reference to the parent widget (QWidget)

#### GitStashBrowserDialog.__apply

__apply()

Private slot to apply the selected stash but keep it.

#### GitStashBrowserDialog.__branch

__branch()

Private slot to create a branch from the selected stash.

#### GitStashBrowserDialog.__clear

__clear()

Private slot to delete all stashes.

#### GitStashBrowserDialog.__drop

__drop()

Private slot to delete the selected stash.

#### GitStashBrowserDialog.__finish

__finish()

Private slot called when the process finished or the user pressed the button.

#### GitStashBrowserDialog.__generateStashEntry

__generateStashEntry(name, date, message)

Private method to generate the stash items.

name
  name of the stash (string)
date
  date the stash was created (string)
message
  stash message (string)

#### GitStashBrowserDialog.__getStashEntries

__getStashEntries()

Private method to retrieve the list of stashes.

#### GitStashBrowserDialog.__pop

__pop()

Private slot to apply the selected stash and delete it.

#### GitStashBrowserDialog.__procFinished

__procFinished(exitCode, exitStatus)

Private slot connected to the finished signal.

exitCode
  exit code of the process (integer)
exitStatus
  exit status of the process (QProcess.ExitStatus)

#### GitStashBrowserDialog.__processBuffer

__processBuffer()

Private method to process the buffered output of the git stash command.

#### GitStashBrowserDialog.__readStderr

__readStderr()

Private slot to handle the readyReadStandardError signal.

It reads the error output of the process and inserts it into the error pane.

#### GitStashBrowserDialog.__readStdout

__readStdout()

Private slot to handle the readyReadStandardOutput signal.

It reads the output of the process and inserts it into a buffer.

#### GitStashBrowserDialog.__resetUI

__resetUI()

Private method to reset the user interface.

#### GitStashBrowserDialog.__resizeColumnsStashes

__resizeColumnsStashes()

Private method to resize the shelve list columns.

#### GitStashBrowserDialog.__showPatch

__showPatch()

Private slot to show the contents of the selected stash.

#### GitStashBrowserDialog.closeEvent

closeEvent(e)

Protected slot implementing a close event handler.

e
  close event (QCloseEvent)

#### GitStashBrowserDialog.keyPressEvent

keyPressEvent(evt)

Protected slot to handle a key press event.

evt
  the key press event (QKeyEvent)

#### GitStashBrowserDialog.on_buttonBox_clicked

on_buttonBox_clicked(button)

Private slot called by a button of the button box clicked.

button
  button that was clicked (QAbstractButton)

#### GitStashBrowserDialog.on_input_returnPressed

on_input_returnPressed()

Private slot to handle the press of the return key in the input field.

#### GitStashBrowserDialog.on_passwordCheckBox_toggled

on_passwordCheckBox_toggled(checked)

Private slot to handle the password checkbox toggled.

checked
  flag indicating the status of the check box (boolean)

#### GitStashBrowserDialog.on_refreshButton_clicked

on_refreshButton_clicked()

Private slot to refresh the list of shelves.

#### GitStashBrowserDialog.on_sendButton_clicked

on_sendButton_clicked()

Private slot to send the input to the git process.

#### GitStashBrowserDialog.on_stashList_currentItemChanged

on_stashList_currentItemChanged(current, previous)

Private slot called, when the current item of the stash list changes.

current
  reference to the new current item (QTreeWidgetItem)
previous
  reference to the old current item (QTreeWidgetItem)

#### GitStashBrowserDialog.on_stashList_customContextMenuRequested

on_stashList_customContextMenuRequested(pos)

Private slot to show the context menu of the stash list.

pos
  position of the mouse pointer (QPoint)

#### GitStashBrowserDialog.show

show()

Public slot to show the dialog.

#### GitStashBrowserDialog.start

start(projectDir)

Public slot to start the git stash command.

projectDir
  name of the project directory (string)

Up