java.lang.Object
com.inductiveautomation.factorypmi.application.model.TopLevelContainerInfoBase
com.inductiveautomation.factorypmi.application.model.WindowInfo

public class WindowInfo extends TopLevelContainerInfoBase
WindowInfo is a wrapper type that contains an FPMIWindow. The serialized bytes inside a "window" project resource are actually a serialized WindowInfo, not a direct FPMIWindow. In this way, the client app can deserialize all of the WindowInfos upon startup, and know information about them (such as their thumbnail, whether they should open on startup, etc) without incurring the cost of deserializing the whole window. They also hold a reference to the FPMIWindow itself when it is open or cached.
  • Field Details

  • Constructor Details

    • WindowInfo

      public WindowInfo()
  • Method Details

    • duplicate

      public WindowInfo duplicate()
      Creates a duplicate of this Window Info, but not the currently opened window (if any). Relies on the commited values. Sets modified=false and newWindow=true
    • isOpenOnStart

      public boolean isOpenOnStart()
    • setOpenOnStart

      public void setOpenOnStart(boolean b)
    • setSerializedCode

      @Deprecated(since="8.1.24") public void setSerializedCode(byte[] compressedXml)
      Deprecated.
      in favor of setSerializedCode(byte[], SerializationEncoding) where an encoding is supplied. still used by 7.9 resources
      Sets the code of this window to 'code', which is SerializationEncoding.AUTO which will recreate this window.
    • setSerializedCode

      public void setSerializedCode(byte[] data, SerializationEncoding encoding)
    • getSerializedCode

      public byte[] getSerializedCode()
      The encoding of these bytes conforms to one of SerializationEncoding and isn't always binary.
    • getSerializedCodeEncoding

      public SerializationEncoding getSerializedCodeEncoding()
    • setSerializedBase64

      @Deprecated public void setSerializedBase64(String base64)
      Deprecated.
    • notifyWindowOpened

      public void notifyWindowOpened(FPMIWindow window)
      Adds this window to the list of opened windows, and clears any cached copy of the window.
    • notifyWindowClosed

      public void notifyWindowClosed(FPMIWindow window)
    • _getWindow

      public FPMIWindow _getWindow()
      Retrieves the FPMIWindow for this WindowInfo. If the window is open, this will return it directly. If the window is in the cache, it will return the cached (but closed) window.
    • isWindowOpen

      public boolean isWindowOpen()
    • getWindowInstances

      public List<FPMIWindow> getWindowInstances()
      Returns any window instances that are currently open.
    • setWindow

      @Deprecated public void setWindow(FPMIWindow window)
      Deprecated.
      Old function name now renamed to _setWindow() to avoid serializing the live window instance.
    • setSecuritySettings

      public void setSecuritySettings(SecuritySettings settings)
    • getPermissions

      public ComponentPermissions getPermissions()
    • setPermissions

      public void setPermissions(ComponentPermissions permissions)
    • getWindowName

      public String getWindowName()
    • setWindowName

      public void setWindowName(String string)
    • getParameters

      public String[] getParameters()
    • setParameters

      public void setParameters(String[] parameters)
    • isAboutWindow

      public boolean isAboutWindow()
      Returns:
      Returns the aboutWindow.
    • setAboutWindow

      public void setAboutWindow(boolean aboutWindow)
      Parameters:
      aboutWindow - The aboutWindow to set.
    • getXmlFormatVersion

      public int getXmlFormatVersion()
    • setXmlFormatVersion

      public void setXmlFormatVersion(int xmlFormatVersion)
    • getResourcePath

      public ResourcePath getResourcePath()
    • setResourcePath

      public void setResourcePath(ResourcePath resourcePath)
    • setWindowThumbnailBase64

      @Deprecated public void setWindowThumbnailBase64(String windowThumbnailBase64)
      Deprecated.