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

Side by Side Diff: tools/viewer/sk_app/CommandSet.cpp

Issue 2035923002: Add Softkey UIState to Viewer (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: Created 4 years, 6 months 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
« no previous file with comments | « tools/viewer/sk_app/CommandSet.h ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright 2016 Google Inc. 2 * Copyright 2016 Google Inc.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license that can be 4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file. 5 * found in the LICENSE file.
6 */ 6 */
7 7
8 #include "CommandSet.h" 8 #include "CommandSet.h"
9 9
10 #include "SkCanvas.h" 10 #include "SkCanvas.h"
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
64 for (Command& cmd : fCommands) { 64 for (Command& cmd : fCommands) {
65 if (Command::kChar_CommandType == cmd.fType && c == cmd.fChar) { 65 if (Command::kChar_CommandType == cmd.fType && c == cmd.fChar) {
66 cmd.fFunction(); 66 cmd.fFunction();
67 return true; 67 return true;
68 } 68 }
69 } 69 }
70 70
71 return false; 71 return false;
72 } 72 }
73 73
74 bool CommandSet::onSoftkey(const SkString& softkey) {
75 for (const Command& cmd : fCommands) {
76 if (cmd.getSoftkeyString().equals(softkey)) {
77 cmd.fFunction();
78 return true;
79 }
80 }
81 return false;
82 }
83
74 void CommandSet::addCommand(SkUnichar c, const char* group, const char* descript ion, 84 void CommandSet::addCommand(SkUnichar c, const char* group, const char* descript ion,
75 std::function<void(void)> function) { 85 std::function<void(void)> function) {
76 fCommands.push_back(Command(c, group, description, function)); 86 fCommands.push_back(Command(c, group, description, function));
77 } 87 }
78 88
79 void CommandSet::addCommand(Window::Key k, const char* keyName, const char* grou p, 89 void CommandSet::addCommand(Window::Key k, const char* keyName, const char* grou p,
80 const char* description, std::function<void(void)> f unction) { 90 const char* description, std::function<void(void)> f unction) {
81 fCommands.push_back(Command(k, keyName, group, description, function)); 91 fCommands.push_back(Command(k, keyName, group, description, function));
82 } 92 }
83 93
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after
147 lastGroup = cmd.fGroup; 157 lastGroup = cmd.fGroup;
148 } 158 }
149 159
150 canvas->drawText(cmd.fKeyName.c_str(), cmd.fKeyName.size(), x, y, paint) ; 160 canvas->drawText(cmd.fKeyName.c_str(), cmd.fKeyName.size(), x, y, paint) ;
151 SkString text = SkStringPrintf(": %s", cmd.fDescription.c_str()); 161 SkString text = SkStringPrintf(": %s", cmd.fDescription.c_str());
152 canvas->drawText(text.c_str(), text.size(), x + keyWidth, y, paint); 162 canvas->drawText(text.c_str(), text.size(), x + keyWidth, y, paint);
153 y += paint.getTextSize() + 2; 163 y += paint.getTextSize() + 2;
154 } 164 }
155 } 165 }
156 166
167 std::vector<SkString> CommandSet::getCommandsAsSoftkeys() const {
168 std::vector<SkString> result;
169 for(const Command& command : fCommands) {
170 result.push_back(command.getSoftkeyString());
171 }
172 return result;
173 }
174
157 } // namespace sk_app 175 } // namespace sk_app
OLDNEW
« no previous file with comments | « tools/viewer/sk_app/CommandSet.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698