00001 /* 00002 Author: Marco Costalba (C) 2005-2006 00003 00004 Copyright: See COPYING file that comes with this distribution 00005 00006 */ 00007 #ifndef COMMITIMPL_H 00008 #define COMMITIMPL_H 00009 00010 #include <qprocess.h> 00011 #include "commitbase.h" 00012 #include "common.h" 00013 00014 class QPopupMenu; 00015 class Git; 00016 00017 class CommitImpl : public CommitBase { 00018 Q_OBJECT 00019 public: 00020 explicit CommitImpl(Git* git); 00021 ~CommitImpl(); 00022 00023 signals: 00024 void changesCommitted(bool); 00025 00026 public slots: 00027 void pushButtonOk_clicked(); 00028 void pushButtonCancel_clicked(); 00029 void pushButtonUpdateCache_clicked(); 00030 void pushButtonSettings_clicked(); 00031 void textEditMsg_cursorPositionChanged(int,int); 00032 00033 private slots: 00034 void contextMenuPopup(QListViewItem*, const QPoint&, int); 00035 void checkUncheck(int); 00036 00037 private: 00038 bool checkFiles(SList selFiles); 00039 bool checkMsg(QString& msg); 00040 bool checkPatchName(QString& patchName); 00041 bool checkConfirm(SCRef msg, SCRef patchName, SCList selFiles); 00042 void computePosition(int para, int pos, int &col_pos, int &line_pos); 00043 00044 Git* git; 00045 QPopupMenu* contextMenu; 00046 QString origMsg; 00047 int CHECK_ALL; 00048 int UNCHECK_ALL; 00049 }; 00050 00051 #endif