[Bug 76037] qmake project: binary not rebuild before execution (after changes in files)
Alexander Dymo
cloudtemple at mksat.net
Sat Dec 11 01:21:15 UTC 2004
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
http://bugs.kde.org/show_bug.cgi?id=76037
cloudtemple mksat net changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
------- Additional Comments From cloudtemple mksat net 2004-12-11 01:19 -------
CVS commit by dymo:
Build the project (or subproject) before execution if source files were changed.
BUG: 76037
Thanks to Daniel Franke for the patch.
M +26 -6 trollprojectpart.cpp 1.81
M +2 -0 trollprojectpart.h 1.29
--- kdevelop/buildtools/qmake/trollprojectpart.cpp #1.80:1.81
@ -112,5 +112,5 @ TrollProjectPart::TrollProjectPart(QObje
action = new KAction( i18n("Execute Main Program"), "exec", SHIFT+Key_F9,
- m_widget, SLOT(slotExecuteProject()),
+ this, SLOT(slotBuildAndExecuteProject()),
actionCollection(), "build_execute_project" );
action->setToolTip(i18n("Execute main program"));
@ -149,5 +149,5 @ TrollProjectPart::TrollProjectPart(QObje
action = new KAction( i18n("Execute Subproject"), "exec", 0,
- m_widget, SLOT(slotExecuteTarget()),
+ this, SLOT(slotBuildAndExecuteTarget()),
actionCollection(), "build_execute_target" );
action->setToolTip(i18n("Execute subproject"));
@ -276,4 +276,24 @ DomUtil::PairList TrollProjectPart::runE
}
+void TrollProjectPart::slotBuildAndExecuteProject()
+{
+ partController()->saveAllFiles();
+ if (isDirty()) {
+ m_executeAfterBuild = true;
+ m_widget->slotBuildProject();
+ } else
+ m_widget->slotExecuteProject();
+}
+
+void TrollProjectPart::slotBuildAndExecuteTarget()
+{
+ partController()->saveAllFiles();
+ if (isDirty()) {
+ m_executeAfterBuild = true;
+ m_widget->slotBuildTarget();
+ } else
+ m_widget->slotExecuteTarget();
+}
+
/** Retuns the currently selected run directory
@ -497,8 +517,8 @ void TrollProjectPart::slotCommandFinish
Q_UNUSED( command );
- if( m_buildCommand != command )
- return;
-
- m_buildCommand = QString::null;
+// if( m_buildCommand != command )
+// return;
+//
+// m_buildCommand = QString::null;
m_timestamp.clear();
--- kdevelop/buildtools/qmake/trollprojectpart.h #1.28:1.29
@ -66,4 +66,6 @ private slots:
// void slotExecute();
void slotCommandFinished( const QString& command );
+ void slotBuildAndExecuteProject();
+ void slotBuildAndExecuteTarget();
private:
More information about the KDevelop-devel
mailing list