Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(455)

Side by Side Diff: base/file_version_info_mac.h

Issue 5815001: Fixed file_version_info so that it finds Mac values correctly. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: added a file Created 10 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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 #ifndef BASE_FILE_VERSION_INFO_MAC_H_ 5 #ifndef BASE_FILE_VERSION_INFO_MAC_H_
6 #define BASE_FILE_VERSION_INFO_MAC_H_ 6 #define BASE_FILE_VERSION_INFO_MAC_H_
7 #pragma once 7 #pragma once
8 8
9 #include <string> 9 #include <string>
10 10
11 #include "base/basictypes.h"
12 #include "base/file_version_info.h" 11 #include "base/file_version_info.h"
13 #include "base/scoped_ptr.h" 12 #include "base/scoped_nsobject.h"
14 13
15 #ifdef __OBJC__ 14 #ifdef __OBJC__
16 @class NSBundle; 15 @class NSBundle;
17 #else 16 #else
18 class NSBundle; 17 class NSBundle;
19 #endif 18 #endif
20 19
21 // Provides a way to access the version information for a file. 20 // Provides a way to access the version information for a file.
22 // This is the information you access when you select a file in the Windows 21 // This is the information you access when you select a file in the Windows
23 // explorer, right-click select Properties, then click the Version tab. 22 // explorer, right-click select Properties, then click the Version tab.
24 23
25 class FileVersionInfoMac : public FileVersionInfo { 24 class FileVersionInfoMac : public FileVersionInfo {
26 public: 25 public:
27 explicit FileVersionInfoMac(NSBundle *bundle); 26 explicit FileVersionInfoMac(NSBundle *bundle);
28 ~FileVersionInfoMac();
29 27
30 // Accessors to the different version properties. 28 // Accessors to the different version properties.
31 // Returns an empty string if the property is not found. 29 // Returns an empty string if the property is not found.
32 virtual std::wstring company_name(); 30 virtual std::wstring company_name();
33 virtual std::wstring company_short_name(); 31 virtual std::wstring company_short_name();
34 virtual std::wstring product_name(); 32 virtual std::wstring product_name();
35 virtual std::wstring product_short_name(); 33 virtual std::wstring product_short_name();
36 virtual std::wstring internal_name(); 34 virtual std::wstring internal_name();
37 virtual std::wstring product_version(); 35 virtual std::wstring product_version();
38 virtual std::wstring private_build(); 36 virtual std::wstring private_build();
39 virtual std::wstring special_build(); 37 virtual std::wstring special_build();
40 virtual std::wstring comments(); 38 virtual std::wstring comments();
41 virtual std::wstring original_filename(); 39 virtual std::wstring original_filename();
42 virtual std::wstring file_description(); 40 virtual std::wstring file_description();
43 virtual std::wstring file_version(); 41 virtual std::wstring file_version();
44 virtual std::wstring legal_copyright(); 42 virtual std::wstring legal_copyright();
45 virtual std::wstring legal_trademarks(); 43 virtual std::wstring legal_trademarks();
46 virtual std::wstring last_change(); 44 virtual std::wstring last_change();
47 virtual bool is_official_build(); 45 virtual bool is_official_build();
48 46
49 private: 47 private:
50 // Lets you access other properties not covered above.
51 bool GetValue(const wchar_t* name, std::wstring* value);
52 48
53 // Similar to GetValue but returns a wstring (empty string if the property
54 // does not exist).
55 std::wstring GetStringValue(const wchar_t* name);
56 49
57 NSBundle *bundle_; 50 // Returns a wstring value for a property name.
51 // Returns the empty string if the property does not exist.
52 std::wstring GetStringValue(CFStringRef name);
Mark Mentovai 2010/12/16 22:11:47 Can you name this GetWStringValue, since that’s wh
dmac 2010/12/16 22:20:42 Done.
53
54 scoped_nsobject<NSBundle> bundle_;
58 55
59 DISALLOW_COPY_AND_ASSIGN(FileVersionInfoMac); 56 DISALLOW_COPY_AND_ASSIGN(FileVersionInfoMac);
60 }; 57 };
61 58
62 #endif // BASE_FILE_VERSION_INFO_MAC_H_ 59 #endif // BASE_FILE_VERSION_INFO_MAC_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698