/******************************************************************************* * Copyright (c) 2001, 2010 Mathew A. Nelson and Robocode contributors * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://robocode.sourceforge.net/license/epl-v10.html * * Contributors: * Pavel Savara * - Initial implementation *******************************************************************************/ package net.sf.robocode.settings; import java.awt.*; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.util.Collection; import java.util.Date; /** * @author Pavel Savara (original) */ public interface ISettingsManager { void saveProperties(); boolean getOptionsViewRobotNames(); void setOptionsViewRobotNames(boolean optionsViewRobotNames); boolean getOptionsViewScanArcs(); void setOptionsViewScanArcs(boolean optionsViewScanArcs); boolean getOptionsViewRobotEnergy(); void setOptionsViewRobotEnergy(boolean optionsViewRobotEnergy); boolean getOptionsViewGround(); void setOptionsViewGround(boolean optionsViewGround); boolean getOptionsViewTPS(); void setOptionsViewTPS(boolean optionsViewTPS); boolean getOptionsViewFPS(); void setOptionsViewFPS(boolean optionsViewFPS); boolean getOptionsViewExplosions(); void setOptionsViewExplosions(boolean optionsViewExplosions); boolean getOptionsViewExplosionDebris(); void setOptionsViewExplosionDebris(boolean optionsViewExplosionDebris); boolean getOptionsViewPreventSpeedupWhenMinimized(); void setOptionsViewPreventSpeedupWhenMinimized(boolean preventSpeedupWhenMinimized); int getOptionsRenderingAntialiasing(); void setOptionsRenderingAntialiasing(int optionsRenderingAntialiasing); int getOptionsRenderingTextAntialiasing(); void setOptionsRenderingTextAntialiasing(int optionsRenderingTextAntialiasing); int getOptionsRenderingMethod(); void setOptionsRenderingMethod(int optionsRenderingMethod); RenderingHints getRenderingHints(); int getOptionsRenderingNoBuffers(); void setOptionsRenderingNoBuffers(int optionsRenderingNoBuffers); boolean getOptionsRenderingBufferImages(); void setOptionsRenderingBufferImages(boolean optionsRenderingBufferImages); boolean getOptionsRenderingForceBulletColor(); void setOptionsRenderingForceBulletColor(boolean optionsRenderingForceBulletColor); int getOptionsBattleDesiredTPS(); void setOptionsBattleDesiredTPS(int optionsBattleDesiredTPS); boolean getOptionsSoundEnableSound(); void setOptionsSoundEnableSound(boolean optionsSoundEnableSound); boolean getOptionsSoundEnableGunshot(); void setOptionsSoundEnableGunshot(boolean optionsSoundEnableGunshot); boolean getOptionsSoundEnableBulletHit(); void setOptionsSoundEnableBulletHit(boolean optionsSoundEnableBulletHit); boolean getOptionsSoundEnableRobotDeath(); void setOptionsSoundEnableRobotDeath(boolean optionsSoundEnableRobotDeath); boolean getOptionsSoundEnableWallCollision(); void setOptionsSoundEnableWallCollision(boolean optionsSoundEnableWallCollision); boolean getOptionsSoundEnableRobotCollision(); void setOptionsSoundEnableRobotCollision(boolean optionsSoundEnableRobotCollision); boolean getOptionsSoundEnableMixerVolume(); void setOptionsSoundMixer(String optionsSoundMixer); String getOptionsSoundMixer(); void setOptionsSoundEnableMixerVolume(boolean optionsSoundEnableMixerVolume); boolean getOptionsSoundEnableMixerPan(); void setOptionsSoundEnableMixerPan(boolean optionsSoundEnableMixerPan); boolean getOptionsTeamShowTeamRobots(); void setOptionsTeamShowTeamRobots(boolean optionsTeamShowTeamRobots); String getFileThemeMusic(); String getFileBackgroundMusic(); String getFileEndOfBattleMusic(); String getFileGunshotSfx(); String getBulletHitsRobotSfx(); String getBulletHitsBulletSfx(); String getRobotDeathSfx(); String getRobotCollisionSfx(); String getWallCollisionSfx(); Date getVersionChecked(); void setVersionChecked(Date versionChecked); long getRobotFilesystemQuota(); void setRobotFilesystemQuota(long robotFilesystemQuota); long getConsoleQuota(); void setConsoleQuota(long consoleQuota); long getCpuConstant(); void setCpuConstant(long cpuConstant); Collection<String> getOptionsDevelopmentPaths(); void setOptionsDevelopmentPaths(Collection<String> paths); Collection<String> getOptionsExcludedDevelopmentPaths(); void setOptionsExcludedDevelopmentPaths(Collection<String> excludedPaths); Collection<String> getOptionsEnabledDevelopmentPaths(); boolean getOptionsCommonShowResults(); boolean getOptionsCommonDontHideRankings(); void setOptionsCommonDontHideRankings(boolean dontHide); void setOptionsCommonAppendWhenSavingResults(boolean enable); boolean getOptionsCommonAppendWhenSavingResults(); void setOptionsCommonShowResults(boolean enable); boolean getOptionsCommonEnableReplayRecording(); boolean getOptionsCommonEnableAutoRecording(); boolean getOptionsCommonAutoRecordingXML(); void setOptionsCommonEnableReplayRecording(boolean enable); void setOptionsCommonEnableAutoRecording(boolean enable); void setOptionsCommonEnableAutoRecordingXML(boolean enable); void setOptionsCommonNotifyAboutNewBetaVersions(boolean enable); boolean getOptionsCommonNotifyAboutNewBetaVersions(); int getNumberOfRounds(); void setNumberOfRounds(int numberOfRounds); void store(FileOutputStream out, String desc) throws IOException; void load(FileInputStream in) throws IOException; String getLastRunVersion(); void setLastRunVersion(String lastRunVersion); void addPropertyListener(ISettingsListener listener); void removePropertyListener(ISettingsListener propertyListener); public final static String OPTIONS_VIEW_ROBOTNAMES = "robocode.options.view.robotNames", OPTIONS_VIEW_SCANARCS = "robocode.options.view.scanArcs", OPTIONS_VIEW_ROBOTENERGY = "robocode.options.view.robotEnergy", OPTIONS_VIEW_GROUND = "robocode.options.view.ground", OPTIONS_VIEW_TPS = "robocode.options.view.TPS", OPTIONS_VIEW_FPS = "robocode.options.view.FPS", OPTIONS_VIEW_EXPLOSIONS = "robocode.options.view.explosions", OPTIONS_VIEW_EXPLOSION_DEBRIS = "robocode.options.view.explosionDebris", OPTIONS_BATTLE_DESIREDTPS = "robocode.options.battle.desiredTPS", OPTIONS_VIEW_PREVENT_SPEEDUP_WHEN_MINIMIZED = "robocode.options.view.preventSpeedupWhenMinimized", OPTIONS_RENDERING_ANTIALIASING = "robocode.options.rendering.antialiasing", OPTIONS_RENDERING_TEXT_ANTIALIASING = "robocode.options.rendering.text.antialiasing", OPTIONS_RENDERING_METHOD = "robocode.options.rendering.method", OPTIONS_RENDERING_NO_BUFFERS = "robocode.options.rendering.noBuffers", OPTIONS_RENDERING_BUFFER_IMAGES = "robocode.options.rendering.bufferImages", OPTIONS_RENDERING_FORCE_BULLET_COLOR = "robocode.options.rendering.forceBulletColor", OPTIONS_SOUND_ENABLESOUND = "robocode.options.sound.enableSound", OPTIONS_SOUND_ENABLEGUNSHOT = "robocode.options.sound.enableGunshot", OPTIONS_SOUND_ENABLEBULLETHIT = "robocode.options.sound.enableBulletHit", OPTIONS_SOUND_ENABLEROBOTDEATH = "robocode.options.sound.enableRobotDeath", OPTIONS_SOUND_ENABLEWALLCOLLISION = "robocode.options.sound.enableWallCollision", OPTIONS_SOUND_ENABLEROBOTCOLLISION = "robocode.options.sound.enableRobotCollision", OPTIONS_SOUND_MIXER = "robocode.options.sound.mixer", OPTIONS_SOUND_ENABLEMIXERVOLUME = "robocode.options.sound.enableMixerVolume", OPTIONS_SOUND_ENABLEMIXERPAN = "robocode.options.sound.enableMixerPan", OPTIONS_COMMON_NOTIFY_ABOUT_NEW_BETA_VERSIONS = "robocode.options.common.notifyAboutNewBetaVersions", OPTIONS_COMMON_SHOW_RESULTS = "robocode.options.common.showResults", OPTIONS_COMMON_DONT_HIDE_RANKINGS = "robocode.options.common.dontHideRankings", OPTIONS_COMMON_APPEND_WHEN_SAVING_RESULTS = "robocode.options.common.appendWhenSavingResults", OPTIONS_COMMON_ENABLE_REPLAY_RECORDING = "robocode.options.common.enableReplayRecording", OPTIONS_COMMON_ENABLE_AUTO_RECORDING = "robocode.options.common.enableAutoRecording", OPTIONS_COMMON_AUTO_RECORDING_XML = "robocode.options.common.autoRecordingXML", OPTIONS_TEAM_SHOWTEAMROBOTS = "robocode.options.team.showTeamRobots", OPTIONS_DEVELOPMENT_PATH = "robocode.options.development.path", OPTIONS_DEVELOPMENT_PATH_EXCLUDED = "robocode.options.development.path.excluded", FILE_THEME_MUSIC = "robocode.file.music.theme", FILE_BACKGROUND_MUSIC = "robocode.file.music.background", FILE_END_OF_BATTLE_MUSIC = "robocode.file.music.endOfBattle", FILE_GUNSHOT_SFX = "robocode.file.sfx.gunshot", FILE_ROBOT_COLLISION_SFX = "robocode.file.sfx.robotCollision", FILE_WALL_COLLISION_SFX = "robocode.file.sfx.wallCollision", FILE_ROBOT_DEATH_SFX = "robocode.file.sfx.robotDeath", FILE_BULLET_HITS_ROBOT_SFX = "robocode.file.sfx.bulletHitsRobot", FILE_BULLET_HITS_BULLET_SFX = "robocode.file.sfx.bulletHitsBullet", VERSIONCHECKED = "robocode.versionchecked", ROBOT_FILESYSTEM_QUOTA = "robocode.robot.filesystem.quota", CONSOLE_QUOTA = "robocode.console.quota", CPU_CONSTANT = "robocode.cpu.constant", LAST_RUN_VERSION = "robocode.version.lastrun", NUMBER_OF_ROUNDS = "robocode.numberOfBattles"; }