package de.blau.android; import java.util.HashMap; import android.support.annotation.NonNull; import android.support.annotation.Nullable; import de.blau.android.osm.OsmElement; import de.blau.android.presets.Preset; public interface ModeConfig { /** * Setup any necessary logic for a mode and save any state that may need restoring * * @param main the current instance of Main * @param logic the current instance of Logic */ void setup(Main main, Logic logic); /** * Restore any necessary state and other cleanup * * @param main the current instance of Main * @param logic the current instance of Logic */ void teardown(Main main, Logic logic); /** * Called before PropertyEditor startup to provide any mode specific tags * * @param logic * @param e * @return */ @Nullable HashMap<String, String> getExtraTags(@NonNull Logic logic, @NonNull OsmElement e); /** * * @param logic * @param e * @return */ @Nullable Preset getPreset(@NonNull Logic logic, @NonNull OsmElement e); }