summaryrefslogtreecommitdiffstats
path: root/vcs/cvsservice/releaseinputdialog.h
diff options
context:
space:
mode:
Diffstat (limited to 'vcs/cvsservice/releaseinputdialog.h')
-rw-r--r--vcs/cvsservice/releaseinputdialog.h55
1 files changed, 55 insertions, 0 deletions
diff --git a/vcs/cvsservice/releaseinputdialog.h b/vcs/cvsservice/releaseinputdialog.h
new file mode 100644
index 00000000..5de2c3e6
--- /dev/null
+++ b/vcs/cvsservice/releaseinputdialog.h
@@ -0,0 +1,55 @@
+/***************************************************************************
+ * Copyright (C) 2003 by Mario Scalas *
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ * *
+ ***************************************************************************/
+
+#ifndef RELEASEINPUTDIALOG_H
+#define RELEASEINPUTDIALOG_H
+
+#include "releaseinputdialogbase.h"
+
+/**
+* Every time an operation needs to prompt the user about a release name,
+* it can use this class: just customize the message to display
+*/
+class ReleaseInputDialog : public ReleaseInputDialogBase
+{
+ Q_OBJECT
+
+public:
+ /**
+ * C-tor
+ * @param parent
+ */
+ ReleaseInputDialog( QWidget* parent = 0 );
+ /**
+ * Destructor
+ */
+ virtual ~ReleaseInputDialog();
+
+ /**
+ * @return a QString formatted as "-r <RELEASE-TAG> " or "-D <RELEASE-DATE> "
+ * so it can be embedded in the command line.
+ */
+ QString release() const;
+
+ /**
+ * @return true if the user has checked "rever": enforce operation then even
+ * if the files have been locally modified.
+ */
+ bool isRevert() const;
+
+private:
+ enum ReleaseType { byHead, byDate, byRevision };
+
+ ReleaseType type() const;
+};
+
+#endif
+