## mars.venus
Class FileStatus

    java.lang.Object
      mars.venus.FileStatus

    public class FileStatus

extends Object

Used to store and return information on the status of the current ASM file that is being edited in the program.

Author:
  Team JSpim

Field Summary
`static int` `EDITED` open/saved edit window with unsaved edits
`static int` `NEW_EDITED` New edit window with unsaved edits
`static int` `NEW_NOT_EDITED` New edit window with no edits
`static int` `NO_FILE` initial state or after close
`static int` `NOT_EDITED` open/saved edit window with no edits
`static int` `OPENING` file is being opened.
`static int` `RUNNABLE` successful assembly
`static int` `RUNNING` execution is under way
`static int` `TERMINATED` execution terminated

Constructor Summary
`FileStatus()` Create a FileStatus object with FileStatis.NO_FILE for status and null for file getters.
`FileStatus(int status, String pathname)` Create a FileStatus object with given status and file pathname.

Method Summary
`static int` `get()` Get file status
`static File` `getFile()` Returns the ASM file.
`String` `getFilename()` Get file name with no path information.
`int` `getFileStatus()` Get editing status of this file.
`static String` `getName()` Returns the name of the file.
`String` `getParent()` Get file parent pathname.
`String` `getPathname()` Get full file pathname.
`boolean` `hasUnsavedEdits()` Determine if file has been modified since last save or, if not yet saved, since being created using New or Open.
`static boolean` `isAssembled()` Tells whether the file has been assembled.
`static boolean` `isEdited()` Tells whether the file has been edited since it has been saved.
`boolean` `isNew()` Determine if file is "new", which means created using New but not yet saved.
`static boolean` `isSaved()` Tells whether the file has been saved.
`static void` `reset()` Resets all the values in FileStatus
`static void` `set(int newStatus)` Set file status.
`static void` `setAssembled(boolean b)` Changes the value of assenbked to the parameter given.
`static void` `setEdited(boolean b)` Changes the value of edited to the parameter given.
`static void` `setFile(File f)` Sets the file to the ASM file passed.
`void` `setFileStatus(int newStatus)` Set editing status of this file.
`static void` `setName(String s)` Changes the value of name to the parameter given.
`void` `setPathname(String newPath)` Set full file pathname.
`void` `setPathname(String parent, String name)` Set full file pathname.
`static void` `setSaved(boolean b)` Changes the value of saved to the parameter given.
`void` `updateStaticFileStatus()` Update static FileStatus fields with values from this FileStatus object To support legacy code that depends on the static.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### NO_FILE

    public static final int NO_FILE

  initial state or after close

  See Also:
    Constant Field Values

### NEW_NOT_EDITED

    public static final int NEW_NOT_EDITED

  New edit window with no edits

  See Also:
    Constant Field Values

### NEW_EDITED

    public static final int NEW_EDITED

  New edit window with unsaved edits

  See Also:
    Constant Field Values

### NOT_EDITED

    public static final int NOT_EDITED

  open/saved edit window with no edits

  See Also:
    Constant Field Values

### EDITED

    public static final int EDITED

  open/saved edit window with unsaved edits

  See Also:
    Constant Field Values

### RUNNABLE

    public static final int RUNNABLE

  successful assembly

  See Also:
    Constant Field Values

### RUNNING

    public static final int RUNNING

  execution is under way

  See Also:
    Constant Field Values

### TERMINATED

    public static final int TERMINATED

  execution terminated

  See Also:
    Constant Field Values

### OPENING

    public static final int OPENING

  file is being opened. DPS 9-Aug-2011

  See Also:
    Constant Field Values

Constructor Detail

### FileStatus

    public FileStatus()

  Create a FileStatus object with FileStatis.NO_FILE for status and null for file getters.

### FileStatus

    public FileStatus(int status,
                      String pathname)

  Create a FileStatus object with given status and file pathname.

  Parameters:
    `status` - Initial file status. See FileStatus static constants.
    `pathname` - Full file pathname. See setPathname(String newPath) below.

Method Detail

### set

    public static void set(int newStatus)

  Set file status. Also updates menu state accordingly.

  Parameters:
    `newStatus` - New status: EDITED, RUNNABLE, etc, see list above.

### get

    public static int get()

  Get file status

  Returns:
    file status EDITED, RUNNABLE, etc, see list above

### setAssembled

    public static void setAssembled(boolean b)

  Changes the value of assenbked to the parameter given.

  Parameters:
    `b` - boolean variable that tells what to set assembled to.

### setSaved

    public static void setSaved(boolean b)

  Changes the value of saved to the parameter given.

  Parameters:
    `b` - boolean variable that tells what to set saved to .

### setEdited

    public static void setEdited(boolean b)

  Changes the value of edited to the parameter given.

  Parameters:
    `b` - boolean variable that tells what to set edited to.

### setName

    public static void setName(String s)

  Changes the value of name to the parameter given.

  Parameters:
    `s` - string variable tells what to set the name of the file to .

### setFile

    public static void setFile(File f)

  Sets the file to the ASM file passed.

  Parameters:
    `f` - file object variable that stores the ASM file.

### getFile

    public static File getFile()

  Returns the ASM file.

  Returns:
    The ASM file.

### getName

    public static String getName()

  Returns the name of the file.

  Returns:
    The name of the ASM file.

### isAssembled

    public static boolean isAssembled()

  Tells whether the file has been assembled.

  Returns:
    Boolean value that is true if the ASM file has been assembled.

### isSaved

    public static boolean isSaved()

  Tells whether the file has been saved.

  Returns:
    Boolean variable that is true if the ASM file has been saved

### isEdited

    public static boolean isEdited()

  Tells whether the file has been edited since it has been saved.

  Returns:
    Boolean value that returns true if the ASM file has been edited.

### reset

    public static void reset()

  Resets all the values in FileStatus

### setFileStatus

    public void setFileStatus(int newStatus)

  Set editing status of this file. See FileStatus static constants.

  Parameters:
    `newStatus` - the new status

### getFileStatus

    public int getFileStatus()

  Get editing status of this file.

  Returns:
    current editing status. See FileStatus static constants.

### isNew

    public boolean isNew()

  Determine if file is "new", which means created using New but not yet saved. If created using Open, it is not new.

  Returns:
    true if file was created using New and has not yet been saved, false otherwise.

### hasUnsavedEdits

    public boolean hasUnsavedEdits()

  Determine if file has been modified since last save or, if not yet saved, since being created using New or Open.

  Returns:
    true if file has been modified since save or creation, false otherwise.

### setPathname

    public void setPathname(String newPath)

  Set full file pathname. See java.io.File(String pathname) for parameter specs.

  Parameters:
    `newPath` - the new pathname. If no directory path, getParent() will return null.

### setPathname

    public void setPathname(String parent,
                            String name)

  Set full file pathname. See java.io.File(String parent, String child) for parameter specs.

  Parameters:
    `parent` - the parent directory of the file. If null, getParent() will return null.
    `name` - the name of the file (no directory path)

### getPathname

    public String getPathname()

  Get full file pathname. See java.io.File.getPath()

  Returns:
    full pathname as a String. Null if

### getFilename

    public String getFilename()

  Get file name with no path information. See java.io.File.getName()

  Returns:
    filename as a String

### getParent

    public String getParent()

  Get file parent pathname. See java.io.File.getParent()

  Returns:
    parent full pathname as a String

### updateStaticFileStatus

    public void updateStaticFileStatus()

  Update static FileStatus fields with values from this FileStatus object To support legacy code that depends on the static.