From 931ab0641d506705d1e99b384ff8644675a69279 Mon Sep 17 00:00:00 2001 From: Paolo Cignoni cignoni Date: Fri, 26 May 2006 04:09:52 +0000 Subject: [PATCH] Still debugging 0.7 --- docs/ToDo.txt | 3 +- src/install/meshlab.nsi | 218 +++++++++++++++++++ src/install/readme.txt | 4 + src/meshlab/mainwindow_Init.cpp | 4 + src/meshlab/mainwindow_RunTime.cpp | 11 +- src/meshlabplugins/meshrender/meshrender.cpp | 11 +- src/sample/texturedknot.mtl | 1 - 7 files changed, 246 insertions(+), 6 deletions(-) create mode 100644 src/install/meshlab.nsi create mode 100644 src/install/readme.txt diff --git a/docs/ToDo.txt b/docs/ToDo.txt index c408f5ae8..5ddc5c9cd 100644 --- a/docs/ToDo.txt +++ b/docs/ToDo.txt @@ -1,7 +1,8 @@ 25/5/06 o clustering nel filtro in input epoch. o install doc e attempt. - +o Last Dir +o selections plus/minus 24/5/06 o Uniformare i nomi degli slot nel main window diff --git a/src/install/meshlab.nsi b/src/install/meshlab.nsi new file mode 100644 index 000000000..b7130361b --- /dev/null +++ b/src/install/meshlab.nsi @@ -0,0 +1,218 @@ +; Script generated by the HM NIS Edit Script Wizard. + +; HM NIS Edit Wizard helper defines +!define PRODUCT_NAME "MeshLab" +!define PRODUCT_VERSION "0.7" +!define PRODUCT_PUBLISHER "Paolo Cignoni VCG - ISTI - CNR" +!define PRODUCT_WEB_SITE "http://vcg.isti.cnr.it/~cignoni" +!define PRODUCT_DIR_REGKEY "Software\Microsoft\Windows\CurrentVersion\App Paths\meshlab.exe" +!define PRODUCT_UNINST_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}" +!define PRODUCT_UNINST_ROOT_KEY "HKLM" + +; MUI 1.67 compatible ------ +!include "MUI.nsh" + +; MUI Settings +!define MUI_ABORTWARNING +!define MUI_ICON "${NSISDIR}\Contrib\Graphics\Icons\modern-install.ico" +!define MUI_UNICON "${NSISDIR}\Contrib\Graphics\Icons\modern-uninstall.ico" + +; Welcome page +!insertmacro MUI_PAGE_WELCOME +; License page +!insertmacro MUI_PAGE_LICENSE "..\..\docs\license.txt" +; Directory page +!insertmacro MUI_PAGE_DIRECTORY +; Instfiles page +!insertmacro MUI_PAGE_INSTFILES +; Finish page +!define MUI_FINISHPAGE_RUN "$INSTDIR\meshlab.exe" +!insertmacro MUI_PAGE_FINISH + +; Uninstaller pages +!insertmacro MUI_UNPAGE_INSTFILES + +; Language files +!insertmacro MUI_LANGUAGE "English" + +; MUI end ------ + +Name "${PRODUCT_NAME} ${PRODUCT_VERSION}" +OutFile "MeshLabSetup.exe" +InstallDir "$PROGRAMFILES\VCG\MeshLab" +InstallDirRegKey HKLM "${PRODUCT_DIR_REGKEY}" "" +ShowInstDetails show +ShowUnInstDetails show +Var qt_base +Section "MainSection" SEC01 + SetOutPath "$INSTDIR" + SetOverwrite ifnewer + File "..\meshlab\release\meshlab.exe" + CreateDirectory "$SMPROGRAMS\MeshLab" + CreateShortCut "$SMPROGRAMS\MeshLab\MeshLab.lnk" "$INSTDIR\meshlab.exe" + CreateShortCut "$DESKTOP\MeshLab.lnk" "$INSTDIR\meshlab.exe" + SetOutPath "$INSTDIR\shaders" + File "..\meshlab\shaders\Cook-Torrance.frag" + File "..\meshlab\shaders\Cook-Torrance.gdp" + File "..\meshlab\shaders\Cook-Torrance.vert" + File "..\meshlab\shaders\dimple.frag" + File "..\meshlab\shaders\dimple.gdp" + File "..\meshlab\shaders\dimple.vert" + File "..\meshlab\shaders\electronic microscope.gdp" + File "..\meshlab\shaders\envmap.frag" + File "..\meshlab\shaders\envmap.gdp" + File "..\meshlab\shaders\envmap.vert" + File "..\meshlab\shaders\glass.frag" + File "..\meshlab\shaders\glass.gdp" + File "..\meshlab\shaders\glass.vert" + File "..\meshlab\shaders\gooch.frag" + File "..\meshlab\shaders\gooch.gdp" + File "..\meshlab\shaders\gooch.vert" + File "..\meshlab\shaders\Hatch.frag" + File "..\meshlab\shaders\Hatch.gdp" + File "..\meshlab\shaders\Hatch.vert" + File "..\meshlab\shaders\lattice.frag" + File "..\meshlab\shaders\lattice.gdp" + File "..\meshlab\shaders\lattice.vert" + File "..\meshlab\shaders\Oren-Nayar.frag" + File "..\meshlab\shaders\Oren-Nayar.gdp" + File "..\meshlab\shaders\Oren-Nayar.vert" + File "..\meshlab\shaders\phong.frag" + File "..\meshlab\shaders\phong.gdp" + File "..\meshlab\shaders\phong.vert" + File "..\meshlab\shaders\polkadot3d.frag" + File "..\meshlab\shaders\polkadot3d.gdp" + File "..\meshlab\shaders\polkadot3d.vert" + File "..\meshlab\shaders\SEM.frag" + File "..\meshlab\shaders\SEM.vert" + File "..\meshlab\shaders\stripes2.frag" + File "..\meshlab\shaders\stripes2.gdp" + File "..\meshlab\shaders\stripes2.vert" + File "..\meshlab\shaders\toon.frag" + File "..\meshlab\shaders\toon.gdp" + File "..\meshlab\shaders\toon.vert" + File "..\meshlab\shaders\xray.frag" + File "..\meshlab\shaders\xray.gdp" + File "..\meshlab\shaders\xray.vert" + SetOutPath "$INSTDIR\plugins" + File "..\meshlab\plugins\meshio.dll" + File "..\meshlab\plugins\meshselect.dll" + File "..\meshlab\plugins\meshrender.dll" + File "..\meshlab\plugins\meshfilter.dll" + File "..\meshlab\plugins\meshedit.dll" + File "..\meshlab\plugins\meshcolorize.dll" + SetOutPath "$INSTDIR\textures" + File "..\meshlab\textures\chrome.png" + SetOutPath "$INSTDIR\samples" + File "..\sample\texturedknot.ply" + File "..\sample\texturedknot.obj" + File "..\sample\texturedknot.mtl" + File "..\sample\TextureDouble_A.png" + File "..\sample\Laurana50k.ply" + SetOutPath "$INSTDIR\plugins\imageformats" + File "C:\Qt\4.1.0\plugins\imageformats\qjpeg1.dll" + SetOutPath "$INSTDIR" + File "C:\Qt\4.1.0\bin\QtCore4.dll" + File "C:\Qt\4.1.0\bin\QtGui4.dll" + File "C:\Qt\4.1.0\bin\QtOpenGL4.dll" + File "C:\Qt\4.1.0\bin\QtXml4.dll" + File "C:\Qt\4.1.0\bin\QtNetwork4.dll" +SectionEnd + +Section -AdditionalIcons + WriteIniStr "$INSTDIR\${PRODUCT_NAME}.url" "InternetShortcut" "URL" "${PRODUCT_WEB_SITE}" + CreateShortCut "$SMPROGRAMS\MeshLab\Website.lnk" "$INSTDIR\${PRODUCT_NAME}.url" + CreateShortCut "$SMPROGRAMS\MeshLab\Uninstall.lnk" "$INSTDIR\uninst.exe" +SectionEnd + +Section -Post + WriteUninstaller "$INSTDIR\uninst.exe" + WriteRegStr HKLM "${PRODUCT_DIR_REGKEY}" "" "$INSTDIR\meshlab.exe" + WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayName" "$(^Name)" + WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "UninstallString" "$INSTDIR\uninst.exe" + WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayIcon" "$INSTDIR\meshlab.exe" + WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayVersion" "${PRODUCT_VERSION}" + WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "URLInfoAbout" "${PRODUCT_WEB_SITE}" + WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "Publisher" "${PRODUCT_PUBLISHER}" +SectionEnd + + +Function un.onUninstSuccess + HideWindow + MessageBox MB_ICONINFORMATION|MB_OK "$(^Name) was successfully removed from your computer." +FunctionEnd + +Function un.onInit + MessageBox MB_ICONQUESTION|MB_YESNO|MB_DEFBUTTON2 "Are you sure you want to completely remove $(^Name) and all of its components?" IDYES +2 + Abort +FunctionEnd + +Section Uninstall + Delete "$INSTDIR\${PRODUCT_NAME}.url" + Delete "$INSTDIR\uninst.exe" + Delete "$INSTDIR\xray.vert" + Delete "$INSTDIR\xray.gdp" + Delete "$INSTDIR\xray.frag" + Delete "$INSTDIR\toon.vert" + Delete "$INSTDIR\toon.gdp" + Delete "$INSTDIR\toon.frag" + Delete "$INSTDIR\stripes2.vert" + Delete "$INSTDIR\stripes2.gdp" + Delete "$INSTDIR\stripes2.frag" + Delete "$INSTDIR\SEM.vert" + Delete "$INSTDIR\SEM.frag" + Delete "$INSTDIR\polkadot3d.vert" + Delete "$INSTDIR\polkadot3d.gdp" + Delete "$INSTDIR\polkadot3d.frag" + Delete "$INSTDIR\phong.vert" + Delete "$INSTDIR\phong.gdp" + Delete "$INSTDIR\phong.frag" + Delete "$INSTDIR\Oren-Nayar.vert" + Delete "$INSTDIR\Oren-Nayar.gdp" + Delete "$INSTDIR\Oren-Nayar.frag" + Delete "$INSTDIR\LightworkDesign-license.txt" + Delete "$INSTDIR\lattice.vert" + Delete "$INSTDIR\lattice.gdp" + Delete "$INSTDIR\lattice.frag" + Delete "$INSTDIR\Hatch.vert" + Delete "$INSTDIR\Hatch.gdp" + Delete "$INSTDIR\Hatch.frag" + Delete "$INSTDIR\gooch.vert" + Delete "$INSTDIR\gooch.gdp" + Delete "$INSTDIR\gooch.frag" + Delete "$INSTDIR\glass.vert" + Delete "$INSTDIR\glass.gdp" + Delete "$INSTDIR\glass.frag" + Delete "$INSTDIR\envmap.vert" + Delete "$INSTDIR\envmap.gdp" + Delete "$INSTDIR\envmap.frag" + Delete "$INSTDIR\electronic microscope.gdp" + Delete "$INSTDIR\dimple.vert" + Delete "$INSTDIR\dimple.gdp" + Delete "$INSTDIR\dimple.frag" + Delete "$INSTDIR\CVS\Root" + Delete "$INSTDIR\CVS\Repository" + Delete "$INSTDIR\CVS\Entries.Old" + Delete "$INSTDIR\CVS\Entries.Extra.Old" + Delete "$INSTDIR\CVS\Entries.Extra" + Delete "$INSTDIR\CVS\Entries" + Delete "$INSTDIR\Cook-Torrance.vert" + Delete "$INSTDIR\Cook-Torrance.gdp" + Delete "$INSTDIR\Cook-Torrance.frag" + Delete "$INSTDIR\3Dlabs-license.txt" + Delete "$INSTDIR\Example.file" + Delete "$INSTDIR\meshlab.exe" + + Delete "$SMPROGRAMS\MeshLab\Uninstall.lnk" + Delete "$SMPROGRAMS\MeshLab\Website.lnk" + Delete "$DESKTOP\MeshLab.lnk" + Delete "$SMPROGRAMS\MeshLab\MeshLab.lnk" + + RMDir "$SMPROGRAMS\MeshLab" + RMDir "$INSTDIR\CVS" + RMDir "$INSTDIR" + + DeleteRegKey ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" + DeleteRegKey HKLM "${PRODUCT_DIR_REGKEY}" + SetAutoClose true +SectionEnd \ No newline at end of file diff --git a/src/install/readme.txt b/src/install/readme.txt new file mode 100644 index 000000000..85ad62cd8 --- /dev/null +++ b/src/install/readme.txt @@ -0,0 +1,4 @@ +To create the installer simply use nsis to run the script "meshlab.nsi" in this dir. +remember to modify the script when changing the qt version (the qt dll files are specified in a absolute way) + +HM Nis Edit e' un buon tool per editare questi script ed eseguirli (il che genera il setup) \ No newline at end of file diff --git a/src/meshlab/mainwindow_Init.cpp b/src/meshlab/mainwindow_Init.cpp index 16ff4473b..99db95e3c 100644 --- a/src/meshlab/mainwindow_Init.cpp +++ b/src/meshlab/mainwindow_Init.cpp @@ -24,6 +24,9 @@ History $Log$ +Revision 1.54 2006/05/26 04:09:52 cignoni +Still debugging 0.7 + Revision 1.53 2006/05/25 04:57:45 cignoni Major 0.7 release. A lot of things changed. Colorize interface gone away, Editing and selection start to work. Optional data really working. Clustering decimation totally rewrote. History start to work. Filters organized in classes. @@ -246,6 +249,7 @@ void MainWindow::createActions() resetTrackBallAct->setShortcut(Qt::CTRL+Qt::Key_H); connect(resetTrackBallAct, SIGNAL(triggered()), this, SLOT(resetTrackBall())); + //////////////Action Menu Windows ///////////////////////////////////////////////////////////////////////// endEditModeAct = new QAction (QIcon(":/images/no_edit.png"),tr("Not editing"), this); endEditModeAct->setShortcut(Qt::Key_Escape); endEditModeAct->setCheckable(true); diff --git a/src/meshlab/mainwindow_RunTime.cpp b/src/meshlab/mainwindow_RunTime.cpp index a858131c4..1c817824f 100644 --- a/src/meshlab/mainwindow_RunTime.cpp +++ b/src/meshlab/mainwindow_RunTime.cpp @@ -24,6 +24,9 @@ History $Log$ +Revision 1.95 2006/05/26 04:09:52 cignoni +Still debugging 0.7 + Revision 1.94 2006/05/25 04:57:45 cignoni Major 0.7 release. A lot of things changed. Colorize interface gone away, Editing and selection start to work. Optional data really working. Clustering decimation totally rewrote. History start to work. Filters organized in classes. @@ -275,8 +278,12 @@ void MainWindow::applyFilter() } void MainWindow::endEditMode() { - GLA()->getEditAction()->setChecked(false); - GLA()->endEdit(); + if(GLA()->getEditAction()) + { + GLA()->getEditAction()->setChecked(false); + GLA()->endEdit(); + } + updateMenus(); } void MainWindow::applyEditMode() { diff --git a/src/meshlabplugins/meshrender/meshrender.cpp b/src/meshlabplugins/meshrender/meshrender.cpp index 883cc838b..eb20d0bf7 100644 --- a/src/meshlabplugins/meshrender/meshrender.cpp +++ b/src/meshlabplugins/meshrender/meshrender.cpp @@ -23,6 +23,9 @@ /**************************************************************************** History $Log$ +Revision 1.18 2006/05/26 04:09:52 cignoni +Still debugging 0.7 + Revision 1.17 2006/05/25 04:57:45 cignoni Major 0.7 release. A lot of things changed. Colorize interface gone away, Editing and selection start to work. Optional data really working. Clustering decimation totally rewrote. History start to work. Filters organized in classes. @@ -85,7 +88,7 @@ void MeshShaderRenderPlugin::initActionList() { QDir shadersDir = QDir(qApp->applicationDirPath()); #if defined(Q_OS_WIN) - if (shadersDir.dirName() == "debug" || shadersDir.dirName() == "release") + if (shadersDir.dirName() == "debug" || shadersDir.dirName() == "release" || shadersDir.dirName() == "plugins" ) shadersDir.cdUp(); #elif defined(Q_OS_MAC) if (shadersDir.dirName() == "MacOS") { @@ -94,7 +97,11 @@ void MeshShaderRenderPlugin::initActionList() { shadersDir.cdUp(); } #endif - shadersDir.cd("shaders"); + bool ret=shadersDir.cd("shaders"); + if(!ret) + QMessageBox::information(0, "MeshLAb", + "Unable to find the shaders directory.\n" + "No shaders will be loaded."); QDomDocument doc; diff --git a/src/sample/texturedknot.mtl b/src/sample/texturedknot.mtl index 6c04d2e93..6d2f8f352 100644 --- a/src/sample/texturedknot.mtl +++ b/src/sample/texturedknot.mtl @@ -1,4 +1,3 @@ -# Max2Mtl Version 4.0 Mar 10th, 2001 # newmtl 01_-_Default Ka 0.6 0.6 0.6