Changeset 25772
- Timestamp:
- 06/02/08 18:34:48 (6 months ago)
- Location:
- haiku/trunk/src/apps/installer
- Files:
-
- 3 modified
-
CopyEngine.cpp (modified) (6 diffs)
-
CopyEngine.h (modified) (1 diff)
-
InstallerWindow.cpp (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
haiku/trunk/src/apps/installer/CopyEngine.cpp
r25466 r25772 1 1 /* 2 * Copyright 2005-200 6, Jérôme DUVAL. All rights reserved.2 * Copyright 2005-2008, Jérôme DUVAL. All rights reserved. 3 3 * Distributed under the terms of the MIT License. 4 4 */ … … 77 77 if (err != B_OK) { 78 78 ERR("Start failed"); 79 SetStatusMessage("Installation aborted."); 79 80 BMessenger(fWindow).SendMessage(RESET_INSTALL); 81 } else { 82 BMessenger(fWindow).SendMessage(INSTALL_FINISHED); 80 83 } 81 84 break; … … 230 233 BDirectory targetDir(targetDirectory.Path()); 231 234 BDirectory srcDir(srcDirectory.Path()); 232 CopyFolder(srcDir, targetDir); 235 err = CopyFolder(srcDir, targetDir); 236 237 if (err != B_OK) 238 return err; 233 239 234 240 // copy selected packages … … 240 246 for (int32 i = 0; i < count; i++) { 241 247 if (fControl->CheckUserCanceled()) 242 return B_ OK;248 return B_CANCELED; 243 249 Package *p = static_cast<Package*>(fPackages->ItemAt(i)); 244 250 packageDir.SetTo(&srcDir, p->Folder()); 245 CopyFolder(packageDir, targetDir); 246 } 247 } 248 249 if (!fControl->CheckUserCanceled()) { 250 LaunchFinishScript(targetDirectory); 251 252 BMessage msg(INSTALL_FINISHED); 253 BMessenger(fWindow).SendMessage(&msg); 254 } 251 err = CopyFolder(packageDir, targetDir); 252 if (err != B_OK) 253 break; 254 } 255 } 256 257 if (err != B_OK) 258 return err; 259 260 if (fControl->CheckUserCanceled()) 261 return B_CANCELED; 262 263 LaunchFinishScript(targetDirectory); 255 264 256 265 return B_OK; … … 258 267 259 268 260 void 269 status_t 261 270 CopyEngine::CopyFolder(BDirectory &srcDir, BDirectory &targetDir) 262 271 { … … 284 293 entry.GetPath(&path); 285 294 ERR2("error while copying %s", path.Path()); 286 } 287 } 295 return err; 296 } 297 } 298 299 return B_OK; 288 300 } 289 301 -
haiku/trunk/src/apps/installer/CopyEngine.h
r25466 r25772 33 33 void LaunchInitScript(BPath &path); 34 34 void LaunchFinishScript(BPath &path); 35 voidCopyFolder(BDirectory &srcDir, BDirectory &targetDir);35 status_t CopyFolder(BDirectory &srcDir, BDirectory &targetDir); 36 36 37 37 InstallerWindow *fWindow; -
haiku/trunk/src/apps/installer/InstallerWindow.cpp
r25466 r25772 1 1 /* 2 * Copyright 2005 , Jérôme DUVAL. All rights reserved.2 * Copyright 2005-2008, Jérôme DUVAL. All rights reserved. 3 3 * Distributed under the terms of the MIT License. 4 4 */ … … 214 214 fInstallStatus = kCancelled; 215 215 SetStatusMessage("Installation cancelled."); 216 PostMessage(RESET_INSTALL);217 216 } 218 217 break; … … 264 263 case INSTALL_FINISHED: 265 264 fBeginButton->SetLabel("Quit"); 265 SetStatusMessage("Installation completed."); 266 266 fInstallStatus = kFinished; 267 267 DisableInterface(false);
