Skip to content

Commit dcfbcaf

Browse files
committed
disable menu run when compile
1 parent 6833424 commit dcfbcaf

File tree

5 files changed

+19
-14
lines changed

5 files changed

+19
-14
lines changed

app/src/main/java/com/duy/ccppcompiler/compiler/CompileManager.java

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@
1616

1717
package com.duy.ccppcompiler.compiler;
1818

19-
import android.app.Activity;
2019
import android.app.ProgressDialog;
2120
import android.content.Intent;
2221

@@ -25,7 +24,8 @@
2524
import com.duy.common.DLog;
2625
import com.duy.ide.compiler.ICompileManager;
2726
import com.duy.ide.compiler.shell.ShellResult;
28-
import com.jecelyin.common.utils.UIUtils;
27+
import com.jecelyin.editor.v2.ui.activities.EditorActivity;
28+
import com.jecelyin.editor.v2.ui.widget.menu.MenuDef;
2929

3030
import java.io.File;
3131

@@ -36,15 +36,16 @@
3636
public class CompileManager implements ICompileManager {
3737
private static final String TAG = "CompileManager";
3838
private ProgressDialog mCompileDialog;
39-
private Activity mActivity;
39+
private EditorActivity mActivity;
4040

41-
public CompileManager(Activity activity) {
41+
CompileManager(EditorActivity activity) {
4242
mCompileDialog = new ProgressDialog(activity);
4343
mActivity = activity;
4444
}
4545

4646
@Override
4747
public void onPrepareCompile() {
48+
mActivity.setMenuStatus(R.id.action_run, MenuDef.STATUS_DISABLED);
4849
mCompileDialog.setTitle(R.string.title_compiling);
4950
mCompileDialog.show();
5051
}
@@ -56,23 +57,28 @@ public void onNewMessage(CharSequence charSequence) {
5657

5758
@Override
5859
public void onCompileSuccess(ShellResult shellResult) {
60+
finishCompile();
5961
if (mCompileDialog != null && mCompileDialog.isShowing()) {
6062
mCompileDialog.dismiss();
6163
}
64+
6265
File internalDir = mActivity.getFilesDir();
6366
String path = new File(internalDir, GCCConstants.TEMP_BINARY_NAME).getAbsolutePath();
6467
Intent intent = new Intent(mActivity, ConsoleActivity.class);
6568
intent.putExtra(ConsoleActivity.EXTRA_BINARY_FILE_PATH, path);
6669
mActivity.startActivity(intent);
6770
}
6871

72+
private void finishCompile() {
73+
mActivity.setMenuStatus(R.id.action_run, MenuDef.STATUS_NORMAL);
74+
}
75+
6976
@Override
7077
public void onCompileFailed(ShellResult shellResult) {
78+
finishCompile();
7179
if (mCompileDialog != null && mCompileDialog.isShowing()) {
7280
mCompileDialog.setMessage(shellResult.getMessage());
73-
// mCompileDialog.dismiss();
7481
}
75-
UIUtils.toast(mActivity, "Compile failed");
7682
if (DLog.DEBUG) DLog.w(TAG, "onCompileFailed: \n" + shellResult.getMessage());
7783
}
7884

app/src/main/java/com/duy/ccppcompiler/compiler/CompilerFactory.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,11 +16,11 @@
1616

1717
package com.duy.ccppcompiler.compiler;
1818

19-
import android.app.Activity;
2019
import android.content.Context;
2120

2221
import com.duy.ide.compiler.ICompileManager;
2322
import com.duy.ide.compiler.INativeCompiler;
23+
import com.jecelyin.editor.v2.ui.activities.EditorActivity;
2424

2525
/**
2626
* Created by Duy on 25-Apr-18.
@@ -34,10 +34,10 @@ public static INativeCompiler createCompiler(Context context, CompileType compil
3434
case GCC:
3535
return new GCCCompiler(context);
3636
}
37-
return null;
37+
return new GCCCompiler(context);
3838
}
3939

40-
public static ICompileManager createCompileManager(Activity activity) {
40+
public static ICompileManager createCompileManager(EditorActivity activity) {
4141
return new CompileManager(activity);
4242
}
4343

app/src/main/java/com/jecelyin/editor/v2/ui/activities/EditorActivity.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -467,7 +467,7 @@ public void run() {
467467
case R.id.m_encoding:
468468
new CharsetsDialog(this).show();
469469
break;
470-
case R.id.m_run:
470+
case R.id.action_run:
471471
if (!isCompiling()) {
472472
compileAndRun();
473473
}
@@ -509,7 +509,6 @@ public void onSaved() {
509509
}
510510

511511
private void compileAndRun() {
512-
513512
saveAll(new SaveListener() {
514513
@Override
515514
public void onSaved() {

app/src/main/java/com/jecelyin/editor/v2/ui/widget/menu/MenuFactory.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ private MenuFactory(Context context) {
4646
groups.put(MenuGroup.TOP, topList);
4747
Integer[] toolbarIcons = Preferences.getInstance(context).getToolbarIcons();
4848
if (toolbarIcons == null) {
49-
toolbarIcons = new Integer[]{R.id.m_run, R.id.m_new, R.id.m_open, R.id.m_save, R.id.m_undo, R.id.m_redo};
49+
toolbarIcons = new Integer[]{R.id.action_run, R.id.m_new, R.id.m_open, R.id.m_save, R.id.m_undo, R.id.m_redo};
5050
}
5151

5252
List<MenuItemInfo> items;
@@ -124,7 +124,7 @@ private void initAllMenuItem() {
124124
menuItemInfos.add(new MenuItemInfo(MenuGroup.VIEW, R.id.m_highlight, Command.CommandEnum.NONE, R.drawable.ic_highlight_white_24dp, R.string.highlight_language));
125125
menuItemInfos.add(new MenuItemInfo(MenuGroup.VIEW, R.id.m_encoding, Command.CommandEnum.NONE, R.drawable.m_encoding, R.string.encoding));
126126

127-
menuItemInfos.add(new MenuItemInfo(MenuGroup.OTHER, R.id.m_run, Command.CommandEnum.NONE, R.drawable.ic_play_arrow_white_24dp, R.string.run));
127+
menuItemInfos.add(new MenuItemInfo(MenuGroup.OTHER, R.id.action_run, Command.CommandEnum.NONE, R.drawable.ic_play_arrow_white_24dp, R.string.run));
128128
menuItemInfos.add(new MenuItemInfo(MenuGroup.OTHER, R.id.m_settings, Command.CommandEnum.NONE, R.drawable.ic_settings_white_24dp, R.string.settings));
129129
}
130130

editor-view/src/main/res/values/ids.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626
<item name="m_highlight" type="id" />
2727
<item name="m_encoding" type="id" />
2828
<item name="m_color" type="id" />
29-
<item name="m_run" type="id" />
29+
<item name="action_run" type="id" />
3030
<item name="m_menu" type="id" />
3131
<item name="m_settings" type="id" />
3232
<item name="m_convert_to_uppercase" type="id" />

0 commit comments

Comments
 (0)