Class SideBar
- java.lang.Object
-
- com.biglybt.ui.swt.skin.SWTSkinObjectAdapter
-
- com.biglybt.ui.swt.views.skin.SkinView
-
- com.biglybt.ui.swt.mdi.BaseMDI
-
- com.biglybt.ui.swt.views.skin.sidebar.SideBar
-
- All Implemented Interfaces:
AEDiagnosticsEvidenceGenerator
,UIUpdatable
,MultipleDocumentInterface
,ObfuscateImage
,MultipleDocumentInterfaceSWT
,SWTSkinObjectListener
public class SideBar extends BaseMDI implements ObfuscateImage, AEDiagnosticsEvidenceGenerator
-
-
Field Summary
Fields Modifier and Type Field Description private TimerEventPeriodic
attention_event
private java.util.List<SideBarEntrySWT>
attention_seekers
private org.eclipse.swt.graphics.Color
bg
private SWTSkinButtonUtility
btnCloseItem
private ParameterListener
configBGColorListener
private ParameterListener
configRedrawListener
private ParameterListener
configShowSideBarListener
private org.eclipse.swt.widgets.Composite
cPluginsArea
protected SideBarEntrySWT
draggingOver
private org.eclipse.swt.events.SelectionListener
dropDownSelectionListener
private org.eclipse.swt.dnd.DropTarget
dropTarget
protected static boolean
END_INDENT
private java.util.Stack<java.lang.String>
entryViewFuture
private java.util.Stack<java.lang.String>
entryViewHistory
private org.eclipse.swt.graphics.Color
fg
private org.eclipse.swt.graphics.Font
fontHeader
private static int
GAP_BETWEEN_LEVEL_1
private Utils.SashWrapper
pluginSash
private java.util.List<UISWTViewImpl>
pluginViews
protected static int
SIDEBAR_ATTENTION_DURATION
protected static int
SIDEBAR_ATTENTION_PERIOD
private SWTSkin
skin
private SWTSkinObjectContainer
soSideBarContents
private SWTSkinObject
soSideBarPopout
private UISWTInstanceImpl.SWTViewListener
swtViewListener
private org.eclipse.swt.widgets.Tree
tree
protected static boolean
USE_NATIVE_EXPANDER
private static boolean
USE_PAINT
-
Fields inherited from class com.biglybt.ui.swt.mdi.BaseMDI
AUTOOPENINFO_DS, AUTOOPENINFO_PARENTID, AUTOOPENINFO_TITLE, CLOSEABLECONFIG_INITIALID
-
Fields inherited from interface com.biglybt.ui.mdi.MultipleDocumentInterface
SIDEBAR_HEADER_DASHBOARD, SIDEBAR_HEADER_DEVICES, SIDEBAR_HEADER_DISCOVERY, SIDEBAR_HEADER_ORDER_DEFAULT, SIDEBAR_HEADER_PLUGINS, SIDEBAR_HEADER_TRANSFERS, SIDEBAR_HEADER_VUZE, SIDEBAR_POS_FIRST, SIDEBAR_SECTION_ACTIVITIES, SIDEBAR_SECTION_ALL_TRACKERS, SIDEBAR_SECTION_ALLPEERS, SIDEBAR_SECTION_ALLPIECES, SIDEBAR_SECTION_ARCHIVED_DOWNLOADS, SIDEBAR_SECTION_BETAPROGRAM, SIDEBAR_SECTION_CHAT, SIDEBAR_SECTION_CLIENT_STATS, SIDEBAR_SECTION_CONFIG, SIDEBAR_SECTION_DEVICES, SIDEBAR_SECTION_DISK_OPS, SIDEBAR_SECTION_DOWNLOAD_HISTORY, SIDEBAR_SECTION_LIBRARY, SIDEBAR_SECTION_LIBRARY_CAT_INSTANCES, SIDEBAR_SECTION_LIBRARY_CD, SIDEBAR_SECTION_LIBRARY_DL, SIDEBAR_SECTION_LIBRARY_TAG_INSTANCES, SIDEBAR_SECTION_LIBRARY_UNOPENED, SIDEBAR_SECTION_LOGGER, SIDEBAR_SECTION_MY_SHARES, SIDEBAR_SECTION_MY_TRACKER, SIDEBAR_SECTION_PLUGINS, SIDEBAR_SECTION_SEARCH, SIDEBAR_SECTION_SUBSCRIPTIONS, SIDEBAR_SECTION_TAG_DISCOVERY, SIDEBAR_SECTION_TAGS, SIDEBAR_SECTION_TORRENT_DETAILS, SIDEBAR_SECTION_TORRENT_OPTIONS, SIDEBAR_SECTION_WELCOME, SIDEBAR_TRANSFERS_SECTION_ORDER
-
Fields inherited from interface com.biglybt.ui.swt.skin.SWTSkinObjectListener
EVENT_CREATE_REQUEST, EVENT_CREATED, EVENT_DATASOURCE_CHANGED, EVENT_DESTROY, EVENT_HIDE, EVENT_LANGUAGE_CHANGE, EVENT_OBFUSCATE, EVENT_SELECT, EVENT_SHOW, NAMES
-
-
Constructor Summary
Constructors Constructor Description SideBar()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private void
_setupNewEntry(SideBarEntrySWT entry, java.lang.String id, boolean expandParent, boolean closeable)
private void
addGeneralMenus()
private void
addHistory(MdiEntry entry)
void
addItem(BaseMdiEntry entry)
private void
addSideBarView(UISWTViewImpl view, org.eclipse.swt.widgets.Composite cPluginsArea)
void
buildMDI(SWTSkinObject skinObject)
void
buildMDI(org.eclipse.swt.widgets.Composite parent)
Builds MDI and populates it with entries registered to id or datasourcetypeBaseMdiEntry
closeEntryByID(java.lang.String id, boolean user_initiated)
SideBarEntrySWT
createEntry(UISWTViewBuilderCore builder, boolean closeable)
protected SideBarEntrySWT
createEntryByCreationListener(java.lang.String id, java.util.Map<?,?> autoOpenInfo)
SideBarEntrySWT
createEntryFromSkinRef(java.lang.String parentEntryID, java.lang.String id, java.lang.String configID, java.lang.String title, ViewTitleInfo titleInfo, java.lang.Object params, boolean closeable, java.lang.String preferredAfterID)
If you prefix the 'preferedAfterID' string with '~' then the operation will actually switch to 'preferedBeforeID'SideBarEntrySWT
createHeader(java.lang.String id, java.lang.String titleID, java.lang.String preferredAfterID)
private void
createSideBar()
private void
createSideBarPluginViews()
private org.eclipse.swt.widgets.TreeItem
createTreeItem(SideBarEntrySWT entry, org.eclipse.swt.widgets.TreeItem parentSwtItem, int index)
protected void
defaultDrop(org.eclipse.swt.dnd.DropTargetEvent event)
protected void
fillDropDownMenu(org.eclipse.swt.widgets.Menu menuDropDown, org.eclipse.swt.widgets.TreeItem[] items, int indent)
void
flipSideBarVisibility()
void
generate(IndentWriter writer)
SideBarEntrySWT
getCurrentEntry()
SideBarEntrySWT
getEntry(java.lang.String id)
SideBarEntrySWT
getEntryBySkinView(java.lang.Object skinView)
org.eclipse.swt.graphics.Font
getHeaderFont()
protected org.eclipse.swt.widgets.Tree
getTree()
private org.eclipse.swt.widgets.TreeItem
getTreeItemAt(int pos)
private org.eclipse.swt.widgets.TreeItem
getTreeItemAt(org.eclipse.swt.widgets.TreeItem[] items, int[] pos)
protected int
indexOf(MdiEntry entry)
boolean
isVisible()
protected void
itemSelected(MdiEntry entry)
org.eclipse.swt.graphics.Image
obfuscatedImage(org.eclipse.swt.graphics.Image image)
void
popoutEntry(MdiEntry entry, boolean onTop)
private void
removeSideBarView(UISWTViewImpl view)
protected void
requestAttention(SideBarEntrySWT entry)
protected void
setCurrentEntry(MdiEntrySWT entry)
protected void
setEntryLoadedOnce(java.lang.String id)
private void
setupNewEntry(SideBarEntrySWT entry, java.lang.String id, boolean expandParent, boolean closeable)
protected void
setupPluginViews()
void
showEntry(MdiEntry newEntry)
private void
showNext()
private void
showPrevious()
java.lang.Object
skinObjectCreated(SWTSkinObject skinObject, java.lang.Object params)
Skin Object was created.java.lang.Object
skinObjectDestroyed(SWTSkinObject skinObject, java.lang.Object params)
Skin Object was destroyedjava.lang.Object
skinObjectInitialShow(SWTSkinObject skinObject, java.lang.Object params)
private void
swt_redraw()
private void
swt_redraw(org.eclipse.swt.widgets.TreeItem[] items)
private void
swt_updateSideBarColors()
private void
swt_updateSideBarColors(org.eclipse.swt.widgets.TreeItem[] items)
private void
swt_updateSideBarHitAreasY(SideBarEntrySWT[] entries)
private void
updateSidebarVisibility()
void
updateUI()
Update your UI!protected boolean
wasEntryLoadedOnce(java.lang.String id)
-
Methods inherited from class com.biglybt.ui.swt.mdi.BaseMDI
addListener, addListener, addListener, canShowEntryByID, closeEntry, closeEntry, closeEntryByID, createEntryFromEventListener, deregisterEntry, deregisterEntry, entryExists, fillMenu, getChildrenOf, getDataSourceType, getEntries, getEntries, getEntriesCount, getEntryFromSkinObject, getMenuHackListeners, getMenuIdPrefix, getParentView, getPreferredOrder, getUpdateUIName, getViewID, isInitialized, loadEntryByID, loadEntryByID, popoutEntryByID, registerEntry, registerEntry, removeEntryAutoOpen, removeItem, removeItem, removeListener, removeListener, removeListener, saveCloseables, setCloseableConfigFile, setDefaultEntryID, setEntryAutoOpen, setPreferredOrder, showEntryByID, showEntryByID, triggerEntryLoadedListeners, triggerSelectionListener, updateLanguage, willEntryAutoOpen
-
Methods inherited from class com.biglybt.ui.swt.views.skin.SkinView
getMainSkinObject, getMdiEntry, getSkin, getSkinObject, isDisposed, setMainSkinObject, skinObjectHidden, skinObjectShown
-
Methods inherited from class com.biglybt.ui.swt.skin.SWTSkinObjectAdapter
dataSourceChanged, eventOccured, skinObjectSelected
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.biglybt.ui.mdi.MultipleDocumentInterface
isDisposed
-
-
-
-
Field Detail
-
END_INDENT
protected static final boolean END_INDENT
-
USE_PAINT
private static final boolean USE_PAINT
-
USE_NATIVE_EXPANDER
protected static final boolean USE_NATIVE_EXPANDER
-
GAP_BETWEEN_LEVEL_1
private static final int GAP_BETWEEN_LEVEL_1
-
SIDEBAR_ATTENTION_PERIOD
protected static final int SIDEBAR_ATTENTION_PERIOD
- See Also:
- Constant Field Values
-
SIDEBAR_ATTENTION_DURATION
protected static final int SIDEBAR_ATTENTION_DURATION
- See Also:
- Constant Field Values
-
skin
private SWTSkin skin
-
soSideBarContents
private SWTSkinObjectContainer soSideBarContents
-
tree
private org.eclipse.swt.widgets.Tree tree
-
fontHeader
private org.eclipse.swt.graphics.Font fontHeader
-
soSideBarPopout
private SWTSkinObject soSideBarPopout
-
btnCloseItem
private SWTSkinButtonUtility btnCloseItem
-
dropDownSelectionListener
private org.eclipse.swt.events.SelectionListener dropDownSelectionListener
-
dropTarget
private org.eclipse.swt.dnd.DropTarget dropTarget
-
draggingOver
protected SideBarEntrySWT draggingOver
-
fg
private org.eclipse.swt.graphics.Color fg
-
bg
private org.eclipse.swt.graphics.Color bg
-
attention_seekers
private java.util.List<SideBarEntrySWT> attention_seekers
-
attention_event
private TimerEventPeriodic attention_event
-
cPluginsArea
private org.eclipse.swt.widgets.Composite cPluginsArea
-
pluginSash
private Utils.SashWrapper pluginSash
-
pluginViews
private final java.util.List<UISWTViewImpl> pluginViews
-
configShowSideBarListener
private ParameterListener configShowSideBarListener
-
configRedrawListener
private ParameterListener configRedrawListener
-
configBGColorListener
private ParameterListener configBGColorListener
-
swtViewListener
private UISWTInstanceImpl.SWTViewListener swtViewListener
-
entryViewHistory
private final java.util.Stack<java.lang.String> entryViewHistory
-
entryViewFuture
private final java.util.Stack<java.lang.String> entryViewFuture
-
-
Method Detail
-
buildMDI
public void buildMDI(org.eclipse.swt.widgets.Composite parent)
Description copied from interface:MultipleDocumentInterfaceSWT
Builds MDI and populates it with entries registered to id or datasourcetype- Specified by:
buildMDI
in interfaceMultipleDocumentInterfaceSWT
-
buildMDI
public void buildMDI(SWTSkinObject skinObject)
- Specified by:
buildMDI
in interfaceMultipleDocumentInterfaceSWT
-
skinObjectCreated
public java.lang.Object skinObjectCreated(SWTSkinObject skinObject, java.lang.Object params)
Description copied from class:SWTSkinObjectAdapter
Skin Object was created. All children are guaranteed to be created.- Overrides:
skinObjectCreated
in classSkinView
-
addGeneralMenus
private void addGeneralMenus()
- Since:
- 3.1.0.1
-
popoutEntry
public void popoutEntry(MdiEntry entry, boolean onTop)
- Specified by:
popoutEntry
in classBaseMDI
-
flipSideBarVisibility
public void flipSideBarVisibility()
- Since:
- 3.1.1.1
-
updateSidebarVisibility
private void updateSidebarVisibility()
-
isVisible
public boolean isVisible()
- Specified by:
isVisible
in interfaceMultipleDocumentInterface
- Overrides:
isVisible
in classSkinView
- Returns:
- the visible
-
skinObjectInitialShow
public java.lang.Object skinObjectInitialShow(SWTSkinObject skinObject, java.lang.Object params)
- Overrides:
skinObjectInitialShow
in classBaseMDI
- Returns:
-
setupPluginViews
protected void setupPluginViews()
- Overrides:
setupPluginViews
in classBaseMDI
-
skinObjectDestroyed
public java.lang.Object skinObjectDestroyed(SWTSkinObject skinObject, java.lang.Object params)
Description copied from class:SWTSkinObjectAdapter
Skin Object was destroyed- Overrides:
skinObjectDestroyed
in classBaseMDI
-
createSideBar
private void createSideBar()
-
createSideBarPluginViews
private void createSideBarPluginViews()
-
addSideBarView
private void addSideBarView(UISWTViewImpl view, org.eclipse.swt.widgets.Composite cPluginsArea)
-
removeSideBarView
private void removeSideBarView(UISWTViewImpl view)
-
defaultDrop
protected void defaultDrop(org.eclipse.swt.dnd.DropTargetEvent event)
- Parameters:
event
-
-
fillDropDownMenu
protected void fillDropDownMenu(org.eclipse.swt.widgets.Menu menuDropDown, org.eclipse.swt.widgets.TreeItem[] items, int indent)
- Parameters:
menuDropDown
-- Since:
- 3.1.1.1
-
swt_updateSideBarHitAreasY
private void swt_updateSideBarHitAreasY(SideBarEntrySWT[] entries)
- Since:
- 3.1.1.1
-
swt_updateSideBarColors
private void swt_updateSideBarColors()
-
swt_updateSideBarColors
private void swt_updateSideBarColors(org.eclipse.swt.widgets.TreeItem[] items)
-
swt_redraw
private void swt_redraw()
-
swt_redraw
private void swt_redraw(org.eclipse.swt.widgets.TreeItem[] items)
-
indexOf
protected int indexOf(MdiEntry entry)
-
createHeader
public SideBarEntrySWT createHeader(java.lang.String id, java.lang.String titleID, java.lang.String preferredAfterID)
- Specified by:
createHeader
in interfaceMultipleDocumentInterface
-
setupNewEntry
private void setupNewEntry(SideBarEntrySWT entry, java.lang.String id, boolean expandParent, boolean closeable)
-
_setupNewEntry
private void _setupNewEntry(SideBarEntrySWT entry, java.lang.String id, boolean expandParent, boolean closeable)
-
createTreeItem
private org.eclipse.swt.widgets.TreeItem createTreeItem(SideBarEntrySWT entry, org.eclipse.swt.widgets.TreeItem parentSwtItem, int index)
-
setCurrentEntry
protected void setCurrentEntry(MdiEntrySWT entry)
- Overrides:
setCurrentEntry
in classBaseMDI
-
showEntry
public void showEntry(MdiEntry newEntry)
- Specified by:
showEntry
in interfaceMultipleDocumentInterface
-
createEntry
public SideBarEntrySWT createEntry(UISWTViewBuilderCore builder, boolean closeable)
- Specified by:
createEntry
in interfaceMultipleDocumentInterfaceSWT
- Returns:
- Newly created MDI Entry
-
createEntryFromSkinRef
public SideBarEntrySWT createEntryFromSkinRef(java.lang.String parentEntryID, java.lang.String id, java.lang.String configID, java.lang.String title, ViewTitleInfo titleInfo, java.lang.Object params, boolean closeable, java.lang.String preferredAfterID)
Description copied from interface:MultipleDocumentInterface
If you prefix the 'preferedAfterID' string with '~' then the operation will actually switch to 'preferedBeforeID'- Specified by:
createEntryFromSkinRef
in interfaceMultipleDocumentInterface
- Specified by:
createEntryFromSkinRef
in classBaseMDI
- Returns:
-
updateUI
public void updateUI()
Description copied from interface:UIUpdatable
Update your UI!- Specified by:
updateUI
in interfaceUIUpdatable
- Overrides:
updateUI
in classBaseMDI
-
wasEntryLoadedOnce
protected boolean wasEntryLoadedOnce(java.lang.String id)
- Specified by:
wasEntryLoadedOnce
in classBaseMDI
-
setEntryLoadedOnce
protected void setEntryLoadedOnce(java.lang.String id)
- Specified by:
setEntryLoadedOnce
in classBaseMDI
-
getHeaderFont
public org.eclipse.swt.graphics.Font getHeaderFont()
-
getTree
protected org.eclipse.swt.widgets.Tree getTree()
-
requestAttention
protected void requestAttention(SideBarEntrySWT entry)
-
getTreeItemAt
private org.eclipse.swt.widgets.TreeItem getTreeItemAt(int pos)
-
getTreeItemAt
private org.eclipse.swt.widgets.TreeItem getTreeItemAt(org.eclipse.swt.widgets.TreeItem[] items, int[] pos)
-
addItem
public void addItem(BaseMdiEntry entry)
-
itemSelected
protected void itemSelected(MdiEntry entry)
- Overrides:
itemSelected
in classBaseMDI
-
closeEntryByID
public BaseMdiEntry closeEntryByID(java.lang.String id, boolean user_initiated)
- Overrides:
closeEntryByID
in classBaseMDI
-
addHistory
private void addHistory(MdiEntry entry)
-
showNext
private void showNext()
-
showPrevious
private void showPrevious()
-
generate
public void generate(IndentWriter writer)
- Specified by:
generate
in interfaceAEDiagnosticsEvidenceGenerator
-
obfuscatedImage
public org.eclipse.swt.graphics.Image obfuscatedImage(org.eclipse.swt.graphics.Image image)
- Specified by:
obfuscatedImage
in interfaceObfuscateImage
-
getEntry
public SideBarEntrySWT getEntry(java.lang.String id)
- Specified by:
getEntry
in interfaceMultipleDocumentInterface
- Specified by:
getEntry
in interfaceMultipleDocumentInterfaceSWT
- Overrides:
getEntry
in classBaseMDI
-
getCurrentEntry
public SideBarEntrySWT getCurrentEntry()
- Specified by:
getCurrentEntry
in interfaceMultipleDocumentInterface
- Specified by:
getCurrentEntry
in interfaceMultipleDocumentInterfaceSWT
- Overrides:
getCurrentEntry
in classBaseMDI
-
getEntryBySkinView
public SideBarEntrySWT getEntryBySkinView(java.lang.Object skinView)
- Specified by:
getEntryBySkinView
in interfaceMultipleDocumentInterfaceSWT
- Overrides:
getEntryBySkinView
in classBaseMDI
-
createEntryByCreationListener
protected SideBarEntrySWT createEntryByCreationListener(java.lang.String id, java.util.Map<?,?> autoOpenInfo)
- Overrides:
createEntryByCreationListener
in classBaseMDI
-
-