Class MainWindowImpl

java.lang.Object
com.biglybt.ui.swt.shells.main.MainWindowImpl
All Implemented Interfaces:
AEDiagnosticsEvidenceGenerator, UIUpdatable, ObfuscateShell, IMainWindow, MainWindow

public class MainWindowImpl extends Object implements MainWindow, ObfuscateShell, AEDiagnosticsEvidenceGenerator, UIUpdatable
  • Field Details

    • LOGID

      private static final LogIDs LOGID
    • shell

      private org.eclipse.swt.widgets.Shell shell
    • core

      private Core core
    • uiInitializer

      private final IUIIntializer uiInitializer
    • skin

      private SWTSkin skin
    • uiSWTInstanceImpl

      private UISWTInstanceImpl uiSWTInstanceImpl
    • uiFunctions

      private UIFunctionsImpl uiFunctions
    • systemTraySWT

      private SystemTraySWT systemTraySWT
    • disposedOrDisposing

      private boolean disposedOrDisposing
    • dms_Startup

      private DownloadManager[] dms_Startup
    • isReady

      private boolean isReady
    • statusBar

      private MainStatusBar statusBar
    • lastShellStatus

      private String lastShellStatus
    • delayedCore

      private final boolean delayedCore
    • downloadBasket

      private TrayWindow downloadBasket
    • configIconBarEnabledListener

      private ParameterListener configIconBarEnabledListener
    • configShowStatusInTitleListener

      private ParameterListener configShowStatusInTitleListener
    • configShowDLBasketListener

      private ParameterListener configShowDLBasketListener
    • configMonitorClipboardListener

      private ParameterListener configMonitorClipboardListener
    • gmListener

    • uiSkinnableSWTListener

      private UISkinnableSWTListener uiSkinnableSWTListener
    • hide_all

      private volatile boolean hide_all
    • last_eta_str

      private String last_eta_str
    • last_eta

      private long last_eta
    • eta_tick_count

      private int eta_tick_count
    • minimized_on_hide

      private final Set<org.eclipse.swt.widgets.Shell> minimized_on_hide
  • Constructor Details

    • MainWindowImpl

      protected MainWindowImpl(Core core, IUIIntializer uiInitializer)
      Old Initializer. Core is required to be started
    • MainWindowImpl

      protected MainWindowImpl(IUIIntializer uiInitializer)
      New Initializer. BiglyBTCore does not need to be started. Use init(Core) when core is available. Called for STARTUP_UIFIRST 1) Constructor 2) createWindow 3) init(core)
      Parameters:
      uiInitializer -
  • Method Details

    • init

      public void init(Core core)
      Called only on STARTUP_UIFIRST
      Specified by:
      init in interface MainWindow
    • disposeOnlyUI

      public void disposeOnlyUI()
      Specified by:
      disposeOnlyUI in interface MainWindow
    • _init

      private void _init(Core core)
      Called only on STARTUP_UIFIRST
    • postPluginSetup

      private void postPluginSetup(Core core)
    • processStartupDMS

      private void processStartupDMS()
    • downloadAdded

      private static void downloadAdded(DownloadManager[] dms, boolean allowDonationCheck)
    • createWindow

      private void createWindow(IUIIntializer uiInitializer)
      Parameters:
      uiInitializer - called in both delayedCore and !delayedCore
    • getCurrentTitleText

      private String getCurrentTitleText()
    • formatRateCompact

      private String formatRateCompact(int rate)
    • increaseProgress

      private void increaseProgress(IUIIntializer uiInitializer, String taskKey)
      Parameters:
      uiInitializer -
      taskKey - TODO
      Since:
      3.0.4.3
    • dispose

      public boolean dispose(boolean for_restart)
      Specified by:
      dispose in interface MainWindow
    • _dispose

      boolean _dispose(boolean bForRestart)
    • showMainWindow

      private void showMainWindow()
    • configureDownloadBasket

      private void configureDownloadBasket()
    • checkForWhatsNewWindow

      private void checkForWhatsNewWindow()
    • setHideAll

      public void setHideAll(boolean hide)
      Specified by:
      setHideAll in interface MainWindow
    • getHideAll

      public boolean getHideAll()
      Specified by:
      getHideAll in interface MainWindow
    • setVisible

      private void setVisible(boolean visible)
    • setVisible

      public void setVisible(boolean visible, boolean tryTricks)
      Specified by:
      setVisible in interface MainWindow
    • minimizeToTray

      private void minimizeToTray(org.eclipse.swt.events.ShellEvent event)
    • initSkinListeners

      private void initSkinListeners()
      Associates every view ID that we use to a class, and creates the class on first EVENT_SHOW.
    • initMDI

      private BaseMDI initMDI()
    • initWidgets2

      private void initWidgets2(BaseMDI mdi)
    • addMenuAndNonTextChildren

      private void addMenuAndNonTextChildren(org.eclipse.swt.widgets.Composite parent, org.eclipse.swt.widgets.Menu menu)
    • attachSearchBox

      private void attachSearchBox(SWTSkinObject skinObject)
      Parameters:
      skinObject -
    • runTest

      private void runTest(String cmd)
    • getShell

      public org.eclipse.swt.widgets.Shell getShell()
      Specified by:
      getShell in interface MainWindow
    • getUISWTInstanceImpl

      public UISWTInstanceImpl getUISWTInstanceImpl()
      Specified by:
      getUISWTInstanceImpl in interface MainWindow
    • getMainStatusBar

      public MainStatusBar getMainStatusBar()
      Specified by:
      getMainStatusBar in interface MainWindow
    • isVisible

      public boolean isVisible(int windowElement)
      Specified by:
      isVisible in interface IMainWindow
    • setVisible

      public void setVisible(int windowElement, boolean value)
      Specified by:
      setVisible in interface IMainWindow
    • flipVisibility

      private void flipVisibility(int windowElement)
    • getMetrics

      public org.eclipse.swt.graphics.Rectangle getMetrics(int windowElement)
      Specified by:
      getMetrics in interface IMainWindow
    • getSkin

      private SWTSkin getSkin()
    • isReady

      public boolean isReady()
      Specified by:
      isReady in interface MainWindow
    • generateObfuscatedImage

      public org.eclipse.swt.graphics.Image generateObfuscatedImage()
      Specified by:
      generateObfuscatedImage in interface ObfuscateShell
      Returns:
    • generate

      public void generate(IndentWriter writer)
      Specified by:
      generate in interface AEDiagnosticsEvidenceGenerator
    • setSelectedLanguageItem

      public void setSelectedLanguageItem()
      Specified by:
      setSelectedLanguageItem in interface MainWindow
    • getMainMenu

      public IMainMenu getMainMenu()
      Specified by:
      getMainMenu in interface MainWindow
    • updateUI

      public void updateUI()
      Description copied from interface: UIUpdatable
      Update your UI!
      Specified by:
      updateUI in interface UIUpdatable
    • getUpdateUIName

      public String getUpdateUIName()
      Description copied from interface: UIUpdatable
      A name for this UIUpdatable so we can track who's being bad
      Specified by:
      getUpdateUIName in interface UIUpdatable
      Returns:
      some name