Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to content

Commit 900e2b7

Browse files
ZephyrJung张煜
authored and
张煜
committed
获取所有题的临时处理办法
1 parent b781eef commit 900e2b7

File tree

3 files changed

+27
-0
lines changed

3 files changed

+27
-0
lines changed

package.json

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@
3333
"onCommand:leetcode.createSession",
3434
"onCommand:leetcode.refreshExplorer",
3535
"onCommand:leetcode.showProblem",
36+
"onCommand:leetcode.loadAllProblems",
3637
"onCommand:leetcode.searchProblem",
3738
"onCommand:leetcode.testSolution",
3839
"onCommand:leetcode.submitSolution",
@@ -93,6 +94,11 @@
9394
"title": "Show Problem",
9495
"category": "LeetCode"
9596
},
97+
{
98+
"command": "leetcode.loadAllProblems",
99+
"title": "Load All Problems",
100+
"category": "LeetCode"
101+
},
96102
{
97103
"command": "leetcode.searchProblem",
98104
"title": "Search Problem",
@@ -158,6 +164,11 @@
158164
"command": "leetcode.showProblem",
159165
"when": "view == leetCodeExplorer && viewItem == problem",
160166
"group": "leetcode@1"
167+
},
168+
{
169+
"command": "leetcode.loadAllProblems",
170+
"when": "view == leetCodeExplorer && viewItem == problem",
171+
"group": "leetcode@1"
161172
}
162173
],
163174
"commandPalette": [

src/commands/show.ts

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,14 @@ export async function showProblem(node?: LeetCodeNode): Promise<void> {
2121
await showProblemInternal(node);
2222
}
2323

24+
export async function loadAllProblems(): Promise<void> {
25+
if (!leetCodeManager.getUser()) {
26+
promptForSignIn();
27+
return;
28+
}
29+
await loadAllProblemsInternal();
30+
}
31+
2432
export async function searchProblem(): Promise<void> {
2533
if (!leetCodeManager.getUser()) {
2634
promptForSignIn();
@@ -39,7 +47,14 @@ export async function searchProblem(): Promise<void> {
3947
await showProblemInternal(choice.value);
4048
}
4149

50+
async function loadAllProblemsInternal() {
51+
new Promise(async (resolve: (res: Array<IQuickItemEx<IProblem>>) => void): Promise<void> => {
52+
(await list.listProblems()).map((problem: IProblem) => showProblemInternal(problem));
53+
});
54+
}
55+
4256
async function showProblemInternal(node: IProblem): Promise<void> {
57+
console.log(node.id + " " + node.name)
4358
try {
4459
const leetCodeConfig: vscode.WorkspaceConfiguration = vscode.workspace.getConfiguration("leetcode");
4560
let defaultLanguage: string | undefined = leetCodeConfig.get<string>("defaultLanguage");

src/extension.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@ export async function activate(context: vscode.ExtensionContext): Promise<void>
4343
vscode.commands.registerCommand("leetcode.selectSessions", () => session.selectSession()),
4444
vscode.commands.registerCommand("leetcode.createSession", () => session.createSession()),
4545
vscode.commands.registerCommand("leetcode.showProblem", (node: LeetCodeNode) => show.showProblem(node)),
46+
vscode.commands.registerCommand("leetcode.loadAllProblems", (node: LeetCodeNode) => show.loadAllProblems()),
4647
vscode.commands.registerCommand("leetcode.searchProblem", () => show.searchProblem()),
4748
vscode.commands.registerCommand("leetcode.refreshExplorer", () => leetCodeTreeDataProvider.refresh()),
4849
vscode.commands.registerCommand("leetcode.testSolution", (uri?: vscode.Uri) => test.testSolution(uri)),

0 commit comments

Comments
 (0)