| OLD | NEW |
| 1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 // | 4 // |
| 5 // This file contains helper functions used by setup. | 5 // This file contains helper functions used by setup. |
| 6 | 6 |
| 7 #ifndef CHROME_INSTALLER_UTIL_HELPER_H_ | 7 #ifndef CHROME_INSTALLER_UTIL_HELPER_H_ |
| 8 #define CHROME_INSTALLER_UTIL_HELPER_H_ | 8 #define CHROME_INSTALLER_UTIL_HELPER_H_ |
| 9 #pragma once | 9 #pragma once |
| 10 | 10 |
| 11 class BrowserDistribution; | 11 class BrowserDistribution; |
| 12 class CommandLine; |
| 12 class FilePath; | 13 class FilePath; |
| 13 | 14 |
| 14 namespace installer { | 15 namespace installer { |
| 15 | 16 |
| 16 // Checks if a distribution is currently installed as part of a multi-install. | 17 // Checks if a distribution is currently installed as part of a multi-install. |
| 17 bool IsInstalledAsMulti(bool system_install, BrowserDistribution* dist); | 18 bool IsInstalledAsMulti(bool system_install, BrowserDistribution* dist); |
| 18 | 19 |
| 20 // Retrieves the command line switches for uninstalling the distribution. |
| 21 // Note that the returned CommandLine object does not include a "program". |
| 22 // Only the switches should be used. |
| 23 // Returns true if the product is installed and the uninstall switches |
| 24 // were successfully retrieved, otherwise false. |
| 25 bool GetUninstallSwitches(bool system_install, BrowserDistribution* dist, |
| 26 CommandLine* cmd_line_switches); |
| 27 |
| 19 // This function returns the install path for Chrome depending on whether its | 28 // This function returns the install path for Chrome depending on whether its |
| 20 // system wide install or user specific install. | 29 // system wide install or user specific install. |
| 21 // system_install: if true, the function returns system wide location | 30 // system_install: if true, the function returns system wide location |
| 22 // (ProgramFiles\Google). Otherwise it returns user specific | 31 // (ProgramFiles\Google). Otherwise it returns user specific |
| 23 // location (Document And Settings\<user>\Local Settings...) | 32 // location (Document And Settings\<user>\Local Settings...) |
| 24 FilePath GetChromeInstallPath(bool system_install, BrowserDistribution* dist); | 33 FilePath GetChromeInstallPath(bool system_install, BrowserDistribution* dist); |
| 25 | 34 |
| 26 // This function returns the path to the directory that holds the user data, | 35 // This function returns the path to the directory that holds the user data, |
| 27 // this is always inside "Document And Settings\<user>\Local Settings.". Note | 36 // this is always inside "Document And Settings\<user>\Local Settings.". Note |
| 28 // that this is the default user data directory and does not take into account | 37 // that this is the default user data directory and does not take into account |
| 29 // that it can be overriden with a command line parameter. | 38 // that it can be overriden with a command line parameter. |
| 30 FilePath GetChromeUserDataPath(BrowserDistribution* dist); | 39 FilePath GetChromeUserDataPath(BrowserDistribution* dist); |
| 31 | 40 |
| 32 // This is a workaround while we unify Chrome and Chrome Frame installation | 41 // This is a workaround while we unify Chrome and Chrome Frame installation |
| 33 // folders. Right now, Chrome Frame can be installed into two different | 42 // folders. Right now, Chrome Frame can be installed into two different |
| 34 // folders: 1) A special "Chrome Frame" folder next to Chrome's folder | 43 // folders: 1) A special "Chrome Frame" folder next to Chrome's folder |
| 35 // 2) The same folder as Chrome is installed into. | 44 // 2) The same folder as Chrome is installed into. |
| 36 // Right now this function will only return Chrome's installation folder | 45 // Right now this function will only return Chrome's installation folder |
| 37 // if Chrome Frame is not already installed or if Chrome Frame is installed | 46 // if Chrome Frame is not already installed or if Chrome Frame is installed |
| 38 // in multi_install mode. | 47 // in multi_install mode. |
| 39 // If multi_install is false or if CF is installed in single mode, then the | 48 // If multi_install is false or if CF is installed in single mode, then the |
| 40 // returned path will be the "Chrome Frame" subfolder of either the user or | 49 // returned path will be the "Chrome Frame" subfolder of either the user or |
| 41 // system default installation folders. | 50 // system default installation folders. |
| 42 FilePath GetChromeFrameInstallPath(bool multi_install, bool system_install, | 51 FilePath GetChromeFrameInstallPath(bool multi_install, bool system_install, |
| 43 BrowserDistribution* dist); | 52 BrowserDistribution* dist); |
| 44 | 53 |
| 45 } // namespace installer | 54 } // namespace installer |
| 46 | 55 |
| 47 #endif // CHROME_INSTALLER_UTIL_HELPER_H_ | 56 #endif // CHROME_INSTALLER_UTIL_HELPER_H_ |
| OLD | NEW |