📄 rcmainframe.java
字号:
symbolsTable.setLayoutData(symbolsTableLData); symbolsTable.setHeaderVisible(true); symbolsTable.setLinesVisible(false); symbolsTable.setSize(new org.eclipse.swt.graphics.Point(468,101)); symbolsTable.addSelectionListener( new SelectionAdapter() { public void widgetSelected(SelectionEvent evt) { symbolsTableWidgetSelected(evt); } }); tableColumn1.setText("Symbol name"); tableColumn1.setWidth(200); tableColumn2.setText("Substitution"); tableColumn2.setWidth(200); GridData composite5LData = new GridData(); composite5LData.verticalAlignment = GridData.BEGINNING; composite5LData.horizontalAlignment = GridData.BEGINNING; composite5LData.widthHint = -1; composite5LData.heightHint = -1; composite5LData.horizontalIndent = 0; composite5LData.horizontalSpan = 1; composite5LData.verticalSpan = 1; composite5LData.grabExcessHorizontalSpace = true; composite5LData.grabExcessVerticalSpace = true; composite5.setLayoutData(composite5LData); addSymbolButton.setText("Add symbol"); addSymbolButton.addSelectionListener( new SelectionAdapter() { public void widgetSelected(SelectionEvent evt) { addSymbolButtonWidgetSelected(evt); } }); removeSymbolButton.setText("Remove symbol"); removeSymbolButton.setEnabled(false); removeSymbolButton.addSelectionListener( new SelectionAdapter() { public void widgetSelected(SelectionEvent evt) { removeSymbolButtonWidgetSelected(evt); } }); FillLayout composite5Layout = new FillLayout(512); composite5.setLayout(composite5Layout); composite5Layout.type = SWT.VERTICAL; composite5Layout.marginWidth = 2; composite5Layout.marginHeight = 2; composite5Layout.spacing = 2; composite5.layout(); GridLayout composite3Layout = new GridLayout(4, true); composite3.setLayout(composite3Layout); composite3Layout.marginWidth = 5; composite3Layout.marginHeight = 5; composite3Layout.numColumns = 4; composite3Layout.makeColumnsEqualWidth = true; composite3Layout.horizontalSpacing = 5; composite3Layout.verticalSpacing = 5; composite3.layout(); tabItem1.setControl(composite1); tabItem1.setText("Parse information"); final Color composite1background = new Color(Display.getDefault(),236,233,216); composite1.setBackground(composite1background); GridData label4LData = new GridData(); label4LData.verticalAlignment = GridData.CENTER; label4LData.horizontalAlignment = GridData.BEGINNING; label4LData.widthHint = 125; label4LData.heightHint = 15; label4LData.horizontalIndent = 0; label4LData.horizontalSpan = 1; label4LData.verticalSpan = 1; label4LData.grabExcessHorizontalSpace = false; label4LData.grabExcessVerticalSpace = false; label4.setLayoutData(label4LData); label4.setText("Lines pre-processed:"); label4.setSize(new org.eclipse.swt.graphics.Point(125,15)); GridData preprocessLineLabelLData = new GridData(); preprocessLineLabelLData.verticalAlignment = GridData.CENTER; preprocessLineLabelLData.horizontalAlignment = GridData.BEGINNING; preprocessLineLabelLData.widthHint = 86; preprocessLineLabelLData.heightHint = 15; preprocessLineLabelLData.horizontalIndent = 0; preprocessLineLabelLData.horizontalSpan = 1; preprocessLineLabelLData.verticalSpan = 1; preprocessLineLabelLData.grabExcessHorizontalSpace = false; preprocessLineLabelLData.grabExcessVerticalSpace = false; preprocessLineLabel.setLayoutData(preprocessLineLabelLData); preprocessLineLabel.setAlignment(SWT.RIGHT); preprocessLineLabel.setText("0"); preprocessLineLabel.setSize(new org.eclipse.swt.graphics.Point(86,15)); GridData label3LData = new GridData(); label3LData.verticalAlignment = GridData.CENTER; label3LData.horizontalAlignment = GridData.BEGINNING; label3LData.widthHint = 90; label3LData.heightHint = 15; label3LData.horizontalIndent = 0; label3LData.horizontalSpan = 1; label3LData.verticalSpan = 1; label3LData.grabExcessHorizontalSpace = false; label3LData.grabExcessVerticalSpace = false; label3.setLayoutData(label3LData); label3.setText("Lines processed:"); label3.setSize(new org.eclipse.swt.graphics.Point(90,15)); GridData parseLineLabelLData = new GridData(); parseLineLabelLData.verticalAlignment = GridData.CENTER; parseLineLabelLData.horizontalAlignment = GridData.BEGINNING; parseLineLabelLData.widthHint = 79; parseLineLabelLData.heightHint = 15; parseLineLabelLData.horizontalIndent = 0; parseLineLabelLData.horizontalSpan = 1; parseLineLabelLData.verticalSpan = 1; parseLineLabelLData.grabExcessHorizontalSpace = false; parseLineLabelLData.grabExcessVerticalSpace = false; parseLineLabel.setLayoutData(parseLineLabelLData); parseLineLabel.setAlignment(SWT.RIGHT); parseLineLabel.setText("0"); parseLineLabel.setSize(new org.eclipse.swt.graphics.Point(79,15)); GridData label5LData = new GridData(); label5LData.verticalAlignment = GridData.CENTER; label5LData.horizontalAlignment = GridData.BEGINNING; label5LData.widthHint = 145; label5LData.heightHint = 15; label5LData.horizontalIndent = 0; label5LData.horizontalSpan = 4; label5LData.verticalSpan = 1; label5LData.grabExcessHorizontalSpace = false; label5LData.grabExcessVerticalSpace = false; label5.setLayoutData(label5LData); label5.setText("Include files processed:"); label5.setSize(new org.eclipse.swt.graphics.Point(145,15)); label5.setFont(singleFileRadioButtonfont); GridData processedIncludesListLData = new GridData(); processedIncludesListLData.verticalAlignment = GridData.FILL; processedIncludesListLData.horizontalAlignment = GridData.FILL; processedIncludesListLData.widthHint = -1; processedIncludesListLData.heightHint = -1; processedIncludesListLData.horizontalIndent = 0; processedIncludesListLData.horizontalSpan = 4; processedIncludesListLData.verticalSpan = 1; processedIncludesListLData.grabExcessHorizontalSpace = true; processedIncludesListLData.grabExcessVerticalSpace = true; processedIncludesList.setLayoutData(processedIncludesListLData); processedIncludesList.setSize(new org.eclipse.swt.graphics.Point(585,119)); GridData label2LData = new GridData(); label2LData.verticalAlignment = GridData.CENTER; label2LData.horizontalAlignment = GridData.BEGINNING; label2LData.widthHint = 145; label2LData.heightHint = 15; label2LData.horizontalIndent = 0; label2LData.horizontalSpan = 4; label2LData.verticalSpan = 1; label2LData.grabExcessHorizontalSpace = false; label2LData.grabExcessVerticalSpace = false; label2.setLayoutData(label2LData); label2.setText("Parse log:"); label2.setSize(new org.eclipse.swt.graphics.Point(145,15)); label2.setFont(singleFileRadioButtonfont); GridData logLData = new GridData(); logLData.verticalAlignment = GridData.FILL; logLData.horizontalAlignment = GridData.FILL; logLData.widthHint = -1; logLData.heightHint = -1; logLData.horizontalIndent = 0; logLData.horizontalSpan = 4; logLData.verticalSpan = 1; logLData.grabExcessHorizontalSpace = true; logLData.grabExcessVerticalSpace = true; log.setLayoutData(logLData); log.setSize(new org.eclipse.swt.graphics.Point(585,119)); GridLayout composite1Layout = new GridLayout(4, true); composite1.setLayout(composite1Layout); composite1Layout.marginWidth = 5; composite1Layout.marginHeight = 5; composite1Layout.numColumns = 4; composite1Layout.makeColumnsEqualWidth = true; composite1Layout.horizontalSpacing = 5; composite1Layout.verticalSpacing = 5; composite1.layout(); tabItem2.setControl(composite2); tabItem2.setText("Sytax tree"); parseTree.setSize(new org.eclipse.swt.graphics.Point(590,322)); FillLayout composite2Layout = new FillLayout(256); composite2.setLayout(composite2Layout); composite2Layout.type = SWT.HORIZONTAL; composite2Layout.marginWidth = 5; composite2Layout.marginHeight = 5; composite2Layout.spacing = 0; composite2.layout(); GridLayout group1Layout = new GridLayout(1, true); group1.setLayout(group1Layout); group1Layout.marginWidth = 5; group1Layout.marginHeight = 5; group1Layout.numColumns = 1; group1Layout.makeColumnsEqualWidth = false; group1Layout.horizontalSpacing = 10; group1Layout.verticalSpacing = 10; group1.layout(); GridLayout thisLayout = new GridLayout(1, true); this.setLayout(thisLayout); thisLayout.marginWidth = 5; thisLayout.marginHeight = 5; thisLayout.numColumns = 1; thisLayout.makeColumnsEqualWidth = true; thisLayout.horizontalSpacing = 5; thisLayout.verticalSpacing = 5; this.layout(); addDisposeListener(new DisposeListener() { public void widgetDisposed(DisposeEvent e) { RCMainFramefont.dispose(); singleFileRadioButtonfont.dispose(); composite1background.dispose(); } }); postInitGUI(); } catch (Exception e) { e.printStackTrace(); } } //------------------------------------------------------------------------------------------------
public void logMessage(String message)
{
log.add(message);
log.update();
}
//------------------------------------------------------------------------------------------------
/**
* Add your post-init code in here
*/
public void postInitGUI()
{
// TODO: Remove debug path before release.
outputPathEdit.setText("V:\\Packaging\\RCConverter\\XML");
// If the user gave the system's include path environment variable to us (as VM argument) then
// use this for the initial entries. Here's how you would specify the VM argument:
// -Dinclude-paths="${env_var:include}"
// (don't forget the quotes!). "include" is the Windows environment variable
// for the current include path.
String includePaths = System.getProperty("include-paths");
String[] pathes = includePaths.split(";");
for (int i = 0; i < pathes.length; i++)
includes.add(pathes[i]);
// Check also the java command line for settings.
if (commandLine != null)
parseCommandLine();
// Now fill the controls with their initial values from our internal lists.
for (int i = 0; i < includes.size(); i++)
includePathList.add((String) includes.get(i));
for (int i = 0; i < defines.size(); i++)
{
TableItem item = new TableItem(symbolsTable, SWT.NULL);
String define = (String) defines.get(i);
String[] parts = define.split(" |\t");
item.setText(0, parts[0].trim());
if (parts.length > 1)
item.setText(1, parts[1].trim());
}
cursor = setupTableCursor(symbolsTable);
}
//------------------------------------------------------------------------------------------------
/**
* Add your pre-init code in here
*/
public void preInitGUI()
{
}
//------------------------------------------------------------------------------------------------
protected void browseRCFileButtonWidgetSelected(SelectionEvent evt)
{
FileDialog rcFilePicker = new FileDialog(shell, SWT.NULL);
rcFilePicker.setFilterExtensions(new String[] { "*.rc", "*.*" });
rcFilePicker.setFileName(rcFileNameEdit.getText());
String newFile = rcFilePicker.open();
if (newFile != null)
rcFileNameEdit.setText(newFile);
} //------------------------------------------------------------------------------------------------
protected void singleFileRadioButtonWidgetSelected(SelectionEvent evt)
{
txtFileNameEdit.setEnabled(false);
browseIniFileButton.setEnabled(false);
rcFileNameEdit.setEnabled(true);
browseRCFileButton.setEnabled(true);
File rcFile = new File(rcFileNameEdit.getText());
parseButton.setEnabled((rcFile.exists() && rcFile.isFile()));
}
//------------------------------------------------------------------------------------------------
protected void rcFileNameEditModifyText(ModifyEvent evt)
{ File rcFile = new File(rcFileNameEdit.getText());
parseButton.setEnabled((rcFile.exists() && rcFile.isFile()));
parseButton.setEnabled(true);
}
//------------------------------------------------------------------------------------------------
protected void multipleFilesRadioButtonWidgetSelected(SelectionEvent evt)
{ txtFileNameEdit.setEnabled(true);
browseIniFileButton.setEnabled(true);
rcFileNameEdit.setEnabled(false);
browseRCFileButton.setEnabled(false);
File configFile = new File(txtFileNameEdit.getText());
parseButton.setEnabled((configFile.exists() && configFile.isFile()));
} //------------------------------------------------------------------------------------------------
protected void txtFileNameEditModifyText(ModifyEvent evt)
{ File txtFile = new File(txtFileNameEdit.getText());
parseButton.setEnabled((txtFile.exists() && txtFile.isFile()));
parseButton.setEnabled(true);
} //------------------------------------------------------------------------------------------------
protected void browseIniFileButtonWidgetSelected(SelectionEvent evt)
{ FileDialog iniFilePicker = new FileDialog(shell, SWT.NULL);
iniFilePicker.setFilterExtensions(new String[] { "*.txt", "*.*" });
iniFilePicker.setFileName(txtFileNameEdit.getText());
String newFile = iniFilePicker.open();
if (newFile != null)
txtFileNameEdit.setText(newFile);
}
//------------------------------------------------------------------------------------------------
protected void browseOutputFolderButtonWidgetSelected(SelectionEvent evt)
{
DirectoryDialog outputPathPicker = new DirectoryDialog(shell, SWT.NULL);
outputPathPicker.setMessage("Select the path you want the resulting xml files to go to.");
outputPathPicker.setFilterPath(outputPathEdit.getText());
String newFolder = outputPathPicker.open();
if (newFolder != null)
outputPathEdit.setText(newFolder);
}
//------------------------------------------------------------------------------------------------
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -