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 |