Class TFileChooserScreen
java.lang.Object
io.github.thecsdev.tcdcommons.api.client.gui.screen.TScreen
io.github.thecsdev.tcdcommons.api.client.gui.screen.TScreenPlus
io.github.thecsdev.tcdcommons.api.client.gui.screen.explorer.TFileChooserScreen
- All Implemented Interfaces:
TParentElement
,IParentScreenProvider
,IEnableStateProvider
A file chooser screen that allows the user to choose a
File
for opening and saving.- See Also:
-
Field Summary
Modifier and TypeFieldDescriptionprotected final TElement
protected @Nullable TFileFilter
protected Path
protected final TFileExplorerPanel
protected boolean
protected final ArrayList
<TFileFilter> protected boolean
protected final Consumer
<TFileChooserResult> protected @Nullable net.minecraft.client.gui.screen.Screen
protected @Nullable File
protected final @Nullable String
protected final FileChooserDialogType
Fields inherited from class io.github.thecsdev.tcdcommons.api.client.gui.screen.TScreen
children, client, title
Fields inherited from interface io.github.thecsdev.tcdcommons.api.client.gui.TParentElement
MAX_CHILD_NESTING_DEPTH
-
Constructor Summary
ModifierConstructorDescriptionprotected
TFileChooserScreen
(FileChooserDialogType type, Path startingPath, @Nullable String targetExtension, Consumer<TFileChooserResult> onComplete) -
Method Summary
Modifier and TypeMethodDescriptionprotected final void
addFileFilter
(TFileFilter fileFilter) static TFileChooserBuilder
builder()
final void
close()
final @Nullable net.minecraft.client.gui.screen.Screen
Returns the "parent"Screen
that should be opened when the current one closes.protected final @Nullable File
Returns theFile
that was eventually selected by the user, if any.protected final void
init()
protected final void
onClosed()
final void
refresh()
final void
renderBackground
(TDrawContext pencil) Renders thisTScreen
's background.protected final void
setFileFilter
(TFileFilter fileFilter) final void
setParentScreen
(@Nullable net.minecraft.client.gui.screen.Screen parent) final boolean
final boolean
final boolean
protected static void
showDialog
(FileChooserDialogType type, @Nullable String targetExtension, Consumer<TFileChooserResult> onComplete) static void
showOpenFileDialog
(@Nullable String targetExtension, Consumer<TFileChooserResult> onComplete) static void
showOpenFileDialog
(Consumer<TFileChooserResult> onComplete) static void
showSaveFileDialog
(@Nullable String targetExtension, Consumer<TFileChooserResult> onComplete) static void
showSaveFileDialog
(Consumer<TFileChooserResult> onComplete) static void
showSelectDirectoryDialog
(Consumer<TFileChooserResult> onComplete) Methods inherited from class io.github.thecsdev.tcdcommons.api.client.gui.screen.TScreenPlus
findClosestSideElement, findClosestSideElement, input
Methods inherited from class io.github.thecsdev.tcdcommons.api.client.gui.screen.TScreen
__postTabNavigation, createScreenWrapper, filesDragged, getAsScreen, getChildren, getClient, getDraggingElement, getEnabled, getFocusedElement, getHeight, getHoveredElement, getItemRenderer, getMousePosition, getParent, getTextRenderer, getTitle, getWidth, getX, getY, getZIndex, hasKeyDown, hasWndDown, inputTabNavigation, isEnabled, isOpen, onOpened, render, renderChildren, renderTooltip, setFocusedElement, setFocusedElement, tick
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface io.github.thecsdev.tcdcommons.api.client.gui.TParentElement
addChild, addChild, clearChildren, findChild, findLastChild, findParent, findParentTElement, forEachChild, getEndX, getEndY, input, removeChild, removeChild
-
Field Details
-
type
-
filters
-
targetExtension
-
onComplete
-
currentPath
-
currentFileFilter
-
selectedFile
-
fullScreen
protected boolean fullScreen -
explorerPanelDraggable
protected boolean explorerPanelDraggable -
parent
@Nullable protected @Nullable net.minecraft.client.gui.screen.Screen parent -
contentPane
-
explorerPanel
-
-
Constructor Details
-
TFileChooserScreen
protected TFileChooserScreen(FileChooserDialogType type, Path startingPath, @Nullable @Nullable String targetExtension, Consumer<TFileChooserResult> onComplete) throws NullPointerException - Throws:
NullPointerException
-
-
Method Details
-
builder
-
showOpenFileDialog
-
showOpenFileDialog
public static void showOpenFileDialog(@Nullable @Nullable String targetExtension, Consumer<TFileChooserResult> onComplete) -
showSaveFileDialog
-
showSaveFileDialog
public static void showSaveFileDialog(@Nullable @Nullable String targetExtension, Consumer<TFileChooserResult> onComplete) -
showSelectDirectoryDialog
-
showDialog
protected static void showDialog(FileChooserDialogType type, @Nullable @Nullable String targetExtension, Consumer<TFileChooserResult> onComplete) -
close
public final void close() -
shouldPause
public final boolean shouldPause()- Overrides:
shouldPause
in classTScreen
-
shouldCloseOnEsc
public final boolean shouldCloseOnEsc()- Overrides:
shouldCloseOnEsc
in classTScreen
-
shouldRenderInGameHud
public final boolean shouldRenderInGameHud()- Overrides:
shouldRenderInGameHud
in classTScreen
-
renderBackground
Description copied from class:TScreen
Renders thisTScreen
's background.Should be called before rendering children in
TScreen.render(TDrawContext)
.- Overrides:
renderBackground
in classTScreen
- Parameters:
pencil
- TheTDrawContext
.- See Also:
-
onClosed
protected final void onClosed() -
getParentScreen
@Nullable public final @Nullable net.minecraft.client.gui.screen.Screen getParentScreen()Description copied from interface:IParentScreenProvider
Returns the "parent"Screen
that should be opened when the current one closes.- Specified by:
getParentScreen
in interfaceIParentScreenProvider
-
setParentScreen
public final void setParentScreen(@Nullable @Nullable net.minecraft.client.gui.screen.Screen parent) -
setFileFilter
@Experimental protected final void setFileFilter(TFileFilter fileFilter) throws NullPointerException - Parameters:
fileFilter
- TheTFileFilter
to set as the sole filter for thisTFileChooserScreen
.- Throws:
NullPointerException
- See Also:
-
addFileFilter
@Experimental protected final void addFileFilter(TFileFilter fileFilter) throws NullPointerException - Parameters:
fileFilter
- TheTFileFilter
to add.- Throws:
NullPointerException
- See Also:
-
getSelectedFile
Returns theFile
that was eventually selected by the user, if any. -
refresh
public final void refresh() -
init
protected final void init()Description copied from class:TScreen
-