| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150 |
- /*
- ** Command & Conquer Renegade(tm)
- ** Copyright 2025 Electronic Arts Inc.
- **
- ** This program is free software: you can redistribute it and/or modify
- ** it under the terms of the GNU General Public License as published by
- ** the Free Software Foundation, either version 3 of the License, or
- ** (at your option) any later version.
- **
- ** This program is distributed in the hope that it will be useful,
- ** but WITHOUT ANY WARRANTY; without even the implied warranty of
- ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- ** GNU General Public License for more details.
- **
- ** You should have received a copy of the GNU General Public License
- ** along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
- // About.java
- import com.ms.wfc.app.*;
- import com.ms.wfc.core.*;
- import com.ms.wfc.ui.*;
- /**
- * @author: Application Wizard
- * @version: 1.0
- * This class can take a variable number of parameters on the command
- * line. Program execution begins with the main() method. The class
- * constructor is not invoked unless an object of type '%FILENAME%'
- * created in the main() method.
- */
- public class About extends Form
- {
- private void okButton_click(Object sender, Event e)
- {
- this.setDialogResult(DialogResult.OK);
- }
- public About()
- {
- super();
- //Required for Visual J++ Form Designer support
- initForm();
-
- // Set Avail System Memory Information
- com.ms.win32.MEMORYSTATUS lpMemStat = new com.ms.win32.MEMORYSTATUS();
- GlobalMemoryStatus(lpMemStat);
- availableMemoryLabel.setText(Integer.toString(lpMemStat.dwTotalPhys/1024) + " KB");
- }
- /**
- * %FILENAME% overrides dispose so it can clean up the
- * component list.
- */
- public void dispose()
- {
- super.dispose();
- components.dispose();
- }
- /**
- * NOTE: The following code is required by the Visual J++ form
- * designer. It can be modified using the form editor. Do not
- * modify it using the code editor.
- */
- Container components = new Container();
- Button okButton = new Button();
- Label titleLabel = new Label();
- Label versionLabel = new Label();
- Label nameLabel = new Label();
- Label memoryLabel = new Label();
- Label availableMemoryLabel = new Label();
- private void initForm()
- {
- okButton.setLocation(new Point(208, 192));
- okButton.setSize(new Point(84, 23));
- okButton.setTabIndex(0);
- okButton.setText("OK");
- okButton.addOnClick(new EventHandler(this.okButton_click));
- this.setText("RenegadeSim");
- this.setAcceptButton(okButton);
- this.setAutoScaleBaseSize(new Point(5, 13));
- this.setBorderStyle(FormBorderStyle.FIXED_TOOLWINDOW);
- this.setCancelButton(okButton);
- this.setClientSize(new Point(298, 241));
- this.setMaximizeBox(false);
- this.setMinimizeBox(false);
- this.setStartPosition(FormStartPosition.CENTER_SCREEN);
- titleLabel.setFont(new Font("MS Sans Serif", 15.0f, FontSize.CHARACTERHEIGHT, FontWeight.BOLD, false, false, false));
- titleLabel.setLocation(new Point(10, 10));
- titleLabel.setSize(new Point(280, 40));
- titleLabel.setTabIndex(1);
- titleLabel.setTabStop(false);
- titleLabel.setText("Renegade Game Results Simulator");
- versionLabel.setLocation(new Point(10, 60));
- versionLabel.setSize(new Point(280, 20));
- versionLabel.setTabIndex(3);
- versionLabel.setTabStop(false);
- versionLabel.setText("Version 0.1a");
- nameLabel.setLocation(new Point(10, 90));
- nameLabel.setSize(new Point(280, 50));
- nameLabel.setTabIndex(4);
- nameLabel.setTabStop(false);
- nameLabel.setText("Randomly computes a set of scores given a bunch of Renegade players and calls a C++ DLL via JNI to deliver game results packets to the Renegade game results server.");
- memoryLabel.setLocation(new Point(8, 160));
- memoryLabel.setSize(new Point(200, 24));
- memoryLabel.setTabIndex(2);
- memoryLabel.setTabStop(false);
- memoryLabel.setText("Memory available to system: ");
- availableMemoryLabel.setLocation(new Point(212, 160));
- availableMemoryLabel.setSize(new Point(72, 24));
- availableMemoryLabel.setTabIndex(5);
- availableMemoryLabel.setTabStop(false);
- availableMemoryLabel.setText("");
- this.setNewControls(new Control[] {
- nameLabel,
- versionLabel,
- titleLabel,
- memoryLabel,
- availableMemoryLabel,
- okButton});
- }
- /**
- * The main entry point for the application.
- *
- * @param args Array of parameters passed to the application
- * via the command line.
- */
- public static void main(String args[])
- {
- Application.run(new About());
- }
- /**
- * @dll.import("KERNEL32",auto)
- */
- public static native void GlobalMemoryStatus(com.ms.win32.MEMORYSTATUS lpBuffer);
- }
|