Skip to content

Commit 25f995b

Browse files
authored
Merge pull request #122 from shuzijun/gradle
Adjusting package structure
2 parents da6965a + 03f1e75 commit 25f995b

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

49 files changed

+340
-385
lines changed

src/main/java/com/shuzijun/leetcode/plugin/actions/OpenInWebAction.java

Lines changed: 0 additions & 26 deletions
This file was deleted.

src/main/java/com/shuzijun/leetcode/plugin/actions/ResetTimeAction.java

Lines changed: 0 additions & 16 deletions
This file was deleted.

src/main/java/com/shuzijun/leetcode/plugin/actions/RunCodeAction.java

Lines changed: 0 additions & 26 deletions
This file was deleted.

src/main/java/com/shuzijun/leetcode/plugin/actions/StartTimeAction.java

Lines changed: 0 additions & 16 deletions
This file was deleted.

src/main/java/com/shuzijun/leetcode/plugin/actions/StopTimeAction.java

Lines changed: 0 additions & 16 deletions
This file was deleted.

src/main/java/com/shuzijun/leetcode/plugin/actions/SubmitAction.java

Lines changed: 0 additions & 27 deletions
This file was deleted.
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,24 @@
1-
package com.shuzijun.leetcode.plugin.actions;
1+
package com.shuzijun.leetcode.plugin.actions.editor;
22

33
import com.intellij.openapi.actionSystem.AnActionEvent;
44
import com.intellij.openapi.actionSystem.PlatformDataKeys;
55
import com.intellij.openapi.vfs.VirtualFile;
6-
import com.intellij.openapi.wm.WindowManager;
6+
import com.shuzijun.leetcode.plugin.actions.AbstractAction;
77
import com.shuzijun.leetcode.plugin.manager.ViewManager;
88
import com.shuzijun.leetcode.plugin.model.Config;
99
import com.shuzijun.leetcode.plugin.model.LeetcodeEditor;
1010
import com.shuzijun.leetcode.plugin.model.Question;
1111
import com.shuzijun.leetcode.plugin.setting.ProjectConfig;
12-
import com.shuzijun.leetcode.plugin.timer.TimerBarWidget;
1312
import com.shuzijun.leetcode.plugin.utils.MessageUtils;
1413
import com.shuzijun.leetcode.plugin.utils.PropertiesUtils;
1514

1615
/**
1716
* @author shuzijun
1817
*/
19-
public abstract class AbstractTimeAction extends AbstractAsynAction {
18+
abstract class AbstractEditAction extends AbstractAction {
2019

2120
@Override
22-
public void perform(AnActionEvent anActionEvent, Config config) {
21+
public void actionPerformed(AnActionEvent anActionEvent, Config config) {
2322
VirtualFile vf = anActionEvent.getData(PlatformDataKeys.VIRTUAL_FILE);
2423
LeetcodeEditor leetcodeEditor = ProjectConfig.getInstance(anActionEvent.getProject()).getEditor(vf.getPath());
2524
if (leetcodeEditor == null) {
@@ -30,13 +29,10 @@ public void perform(AnActionEvent anActionEvent, Config config) {
3029
MessageUtils.getInstance(anActionEvent.getProject()).showInfoMsg("info", PropertiesUtils.getInfo("tree.null"));
3130
return;
3231
}
33-
TimerBarWidget timerBarWidget = (TimerBarWidget) WindowManager.getInstance().getStatusBar(anActionEvent.getProject()).getWidget(TimerBarWidget.ID);
34-
if (timerBarWidget != null) {
35-
perform(anActionEvent, config, timerBarWidget, question);
36-
} else {
37-
//For possible reasons, the IDE version is not supported
38-
}
32+
33+
actionPerformed(anActionEvent, config, question);
34+
3935
}
4036

41-
public abstract void perform(AnActionEvent anActionEvent, Config config, TimerBarWidget timerBarWidget, Question question);
37+
public abstract void actionPerformed(AnActionEvent anActionEvent, Config config, Question question);
4238
}
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
package com.shuzijun.leetcode.plugin.actions.editor;
2+
3+
import com.intellij.openapi.actionSystem.AnActionEvent;
4+
import com.intellij.openapi.application.ApplicationManager;
5+
import com.shuzijun.leetcode.plugin.model.Config;
6+
import com.shuzijun.leetcode.plugin.model.Question;
7+
8+
/**
9+
* @author shuzijun
10+
*/
11+
public abstract class AbstractEditAsynAction extends AbstractEditAction {
12+
13+
@Override
14+
public void actionPerformed(AnActionEvent anActionEvent, Config config, Question question) {
15+
ApplicationManager.getApplication().executeOnPooledThread(new Runnable() {
16+
@Override
17+
public void run() {
18+
perform(anActionEvent, config, question);
19+
}
20+
});
21+
}
22+
23+
public abstract void perform(AnActionEvent anActionEvent, Config config, Question question);
24+
}

src/main/java/com/shuzijun/leetcode/plugin/actions/EditorMenuActionGroup.java renamed to src/main/java/com/shuzijun/leetcode/plugin/actions/editor/EditorMenuActionGroup.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package com.shuzijun.leetcode.plugin.actions;
1+
package com.shuzijun.leetcode.plugin.actions.editor;
22

33
import com.intellij.openapi.actionSystem.AnActionEvent;
44
import com.intellij.openapi.actionSystem.DefaultActionGroup;

src/main/java/com/shuzijun/leetcode/plugin/actions/editor/OpenContentAction.java

Lines changed: 2 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,40 +1,19 @@
11
package com.shuzijun.leetcode.plugin.actions.editor;
22

33
import com.intellij.openapi.actionSystem.AnActionEvent;
4-
import com.intellij.openapi.actionSystem.CommonDataKeys;
5-
import com.intellij.openapi.actionSystem.PlatformDataKeys;
64
import com.intellij.openapi.application.ApplicationManager;
7-
import com.intellij.openapi.editor.Editor;
85
import com.intellij.openapi.project.Project;
9-
import com.intellij.openapi.vfs.VirtualFile;
10-
import com.shuzijun.leetcode.plugin.actions.AbstractAction;
116
import com.shuzijun.leetcode.plugin.manager.CodeManager;
12-
import com.shuzijun.leetcode.plugin.manager.ViewManager;
137
import com.shuzijun.leetcode.plugin.model.Config;
14-
import com.shuzijun.leetcode.plugin.model.LeetcodeEditor;
158
import com.shuzijun.leetcode.plugin.model.Question;
16-
import com.shuzijun.leetcode.plugin.setting.ProjectConfig;
17-
import com.shuzijun.leetcode.plugin.utils.MessageUtils;
18-
import com.shuzijun.leetcode.plugin.utils.PropertiesUtils;
199

2010
/**
2111
* @author shuzijun
2212
*/
23-
public class OpenContentAction extends AbstractAction {
13+
public class OpenContentAction extends AbstractEditAction {
2414

2515
@Override
26-
public void actionPerformed(AnActionEvent anActionEvent, Config config) {
27-
final Editor editor = anActionEvent.getData(CommonDataKeys.EDITOR);
28-
VirtualFile vf = anActionEvent.getData(PlatformDataKeys.VIRTUAL_FILE);
29-
LeetcodeEditor leetcodeEditor = ProjectConfig.getInstance(anActionEvent.getProject()).getEditor(vf.getPath());
30-
if (leetcodeEditor == null) {
31-
return;
32-
}
33-
Question question = ViewManager.getQuestionById(leetcodeEditor.getQuestionId(), anActionEvent.getProject());
34-
if (question == null) {
35-
MessageUtils.getInstance(anActionEvent.getProject()).showInfoMsg("info", PropertiesUtils.getInfo("tree.null"));
36-
return;
37-
}
16+
public void actionPerformed(AnActionEvent anActionEvent, Config config, Question question) {
3817
Project project = anActionEvent.getProject();
3918
ApplicationManager.getApplication().invokeLater(new Runnable() {
4019
@Override

src/main/java/com/shuzijun/leetcode/plugin/actions/editor/OpenInWebAction.java

Lines changed: 3 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -2,34 +2,17 @@
22

33
import com.intellij.ide.BrowserUtil;
44
import com.intellij.openapi.actionSystem.AnActionEvent;
5-
import com.intellij.openapi.actionSystem.PlatformDataKeys;
6-
import com.intellij.openapi.vfs.VirtualFile;
7-
import com.shuzijun.leetcode.plugin.actions.AbstractAction;
8-
import com.shuzijun.leetcode.plugin.manager.ViewManager;
95
import com.shuzijun.leetcode.plugin.model.Config;
10-
import com.shuzijun.leetcode.plugin.model.LeetcodeEditor;
116
import com.shuzijun.leetcode.plugin.model.Question;
12-
import com.shuzijun.leetcode.plugin.setting.ProjectConfig;
13-
import com.shuzijun.leetcode.plugin.utils.MessageUtils;
14-
import com.shuzijun.leetcode.plugin.utils.PropertiesUtils;
157
import com.shuzijun.leetcode.plugin.utils.URLUtils;
168

179
/**
1810
* @author zzdcon
1911
*/
20-
public class OpenInWebAction extends AbstractAction {
12+
public class OpenInWebAction extends AbstractEditAction {
13+
2114
@Override
22-
public void actionPerformed(AnActionEvent anActionEvent, Config config) {
23-
VirtualFile vf = anActionEvent.getData(PlatformDataKeys.VIRTUAL_FILE);
24-
LeetcodeEditor leetcodeEditor = ProjectConfig.getInstance(anActionEvent.getProject()).getEditor(vf.getPath());
25-
if (leetcodeEditor == null) {
26-
return;
27-
}
28-
Question question = ViewManager.getQuestionById(leetcodeEditor.getQuestionId(), anActionEvent.getProject());
29-
if (question == null) {
30-
MessageUtils.getInstance(anActionEvent.getProject()).showInfoMsg("info", PropertiesUtils.getInfo("tree.null"));
31-
return;
32-
}
15+
public void actionPerformed(AnActionEvent anActionEvent, Config config, Question question) {
3316
BrowserUtil.browse(URLUtils.getLeetcodeProblems() + question.getTitleSlug());
3417
}
3518
}
Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,23 @@
11
package com.shuzijun.leetcode.plugin.actions.editor;
22

33
import com.intellij.openapi.actionSystem.AnActionEvent;
4-
import com.shuzijun.leetcode.plugin.actions.AbstractTimeAction;
4+
import com.intellij.openapi.wm.WindowManager;
55
import com.shuzijun.leetcode.plugin.model.Config;
66
import com.shuzijun.leetcode.plugin.model.Question;
77
import com.shuzijun.leetcode.plugin.timer.TimerBarWidget;
88

99
/**
1010
* @author shuzijun
1111
*/
12-
public class ResetTimeAction extends AbstractTimeAction {
12+
public class ResetTimeAction extends AbstractEditAsynAction {
13+
1314
@Override
14-
public void perform(AnActionEvent anActionEvent, Config config, TimerBarWidget timerBarWidget, Question question) {
15-
timerBarWidget.reset();
15+
public void perform(AnActionEvent anActionEvent, Config config, Question question) {
16+
TimerBarWidget timerBarWidget = (TimerBarWidget) WindowManager.getInstance().getStatusBar(anActionEvent.getProject()).getWidget(TimerBarWidget.ID);
17+
if (timerBarWidget != null) {
18+
timerBarWidget.reset();
19+
} else {
20+
//For possible reasons, the IDE version is not supported
21+
}
1622
}
1723
}
Lines changed: 4 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,34 +1,17 @@
11
package com.shuzijun.leetcode.plugin.actions.editor;
22

33
import com.intellij.openapi.actionSystem.AnActionEvent;
4-
import com.intellij.openapi.actionSystem.PlatformDataKeys;
5-
import com.intellij.openapi.vfs.VirtualFile;
6-
import com.shuzijun.leetcode.plugin.actions.AbstractAsynAction;
74
import com.shuzijun.leetcode.plugin.manager.CodeManager;
8-
import com.shuzijun.leetcode.plugin.manager.ViewManager;
95
import com.shuzijun.leetcode.plugin.model.Config;
10-
import com.shuzijun.leetcode.plugin.model.LeetcodeEditor;
116
import com.shuzijun.leetcode.plugin.model.Question;
12-
import com.shuzijun.leetcode.plugin.setting.ProjectConfig;
13-
import com.shuzijun.leetcode.plugin.utils.MessageUtils;
14-
import com.shuzijun.leetcode.plugin.utils.PropertiesUtils;
157

168
/**
179
* @author shuzijun
1810
*/
19-
public class RunCodeAction extends AbstractAsynAction {
11+
public class RunCodeAction extends AbstractEditAsynAction {
12+
2013
@Override
21-
public void perform(AnActionEvent anActionEvent, Config config) {
22-
VirtualFile vf = anActionEvent.getData(PlatformDataKeys.VIRTUAL_FILE);
23-
LeetcodeEditor leetcodeEditor = ProjectConfig.getInstance(anActionEvent.getProject()).getEditor(vf.getPath());
24-
if (leetcodeEditor == null) {
25-
return;
26-
}
27-
Question question = ViewManager.getQuestionById(leetcodeEditor.getQuestionId(), anActionEvent.getProject());
28-
if (question == null) {
29-
MessageUtils.getInstance(anActionEvent.getProject()).showInfoMsg("info", PropertiesUtils.getInfo("tree.null"));
30-
return;
31-
}
32-
CodeManager.RuncodeCode(question,anActionEvent.getProject());
14+
public void perform(AnActionEvent anActionEvent, Config config, Question question) {
15+
CodeManager.RuncodeCode(question, anActionEvent.getProject());
3316
}
3417
}
Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,23 @@
11
package com.shuzijun.leetcode.plugin.actions.editor;
22

33
import com.intellij.openapi.actionSystem.AnActionEvent;
4-
import com.shuzijun.leetcode.plugin.actions.AbstractTimeAction;
4+
import com.intellij.openapi.wm.WindowManager;
55
import com.shuzijun.leetcode.plugin.model.Config;
66
import com.shuzijun.leetcode.plugin.model.Question;
77
import com.shuzijun.leetcode.plugin.timer.TimerBarWidget;
88

99
/**
1010
* @author shuzijun
1111
*/
12-
public class StartTimeAction extends AbstractTimeAction {
12+
public class StartTimeAction extends AbstractEditAsynAction {
13+
1314
@Override
14-
public void perform(AnActionEvent anActionEvent, Config config, TimerBarWidget timerBarWidget, Question question) {
15-
timerBarWidget.startTimer(question.getTitle());
15+
public void perform(AnActionEvent anActionEvent, Config config, Question question) {
16+
TimerBarWidget timerBarWidget = (TimerBarWidget) WindowManager.getInstance().getStatusBar(anActionEvent.getProject()).getWidget(TimerBarWidget.ID);
17+
if (timerBarWidget != null) {
18+
timerBarWidget.startTimer(question.getTitle());
19+
} else {
20+
//For possible reasons, the IDE version is not supported
21+
}
1622
}
1723
}

0 commit comments

Comments
 (0)