⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rcmainframe.java

📁 外国人写的c#语法解析器
💻 JAVA
📖 第 1 页 / 共 4 页
字号:
			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 + -