Skip to main content

A simple file and folder browser for Panda3D

Project description

DirectFolderBrowser

A file and folder browser for Panda3D using DirectGUI

Features

This is a simple fullscreen file and folder browser with a basic featureset. Currently implemented are:

  • Browsing files and folders
  • Display content as symbols or in a detailed list
  • Show/Hide hidden files (using unix like leading dot)
  • Create new folders
  • Filter by file extension
  • Resizes with window size changes
  • Makes use of the Tooltip class

Install

Install the DirectFolderBrowser via pip

pip install DirectFolderBrowser

How to use

To add a browser instance to your running Panda3D application, just instantiate it like shown here:

from DirectFolderBrowser.DirectFolderBrowser import DirectFolderBrowser

# this command will be called by the browser
def callbackCommand(ok):
    if ok == 1:
        print("User Clicked OK")

        # print the selected file
        print(browser.get())

        browser.hide()
        # Destroy the browser if it's not needed anymore
        #browser.destroy()
    elif ok == 0:
        print("User Clicked Cancel")
        browser.hide()
        browser.destroy()

# show the browser as file browser
browser = DirectFolderBrowser(callbackCommand, fileBrowser=True)

Parameters

The DirectFolderBrowser accepts a few arguments.

  • command: The command that will be called on closing the browser
  • fileBrowser: If set to True the browser will show files, otherwise it will only show folders
  • defaultPath: The initial path the browser will be set to show
  • defaultFilename: The filename that will be set by default, only usefull if fileBrowser is True
  • fileExtensions: A list of extensions. Only files with those extensions will be shown. Only usefull if fileBrowser is True
  • tooltip: An instance of the Tooltip class to display tooltips for certain parts of the editor
  • iconDir: A directory path that contains replacement images. It must contain all required images which are:
    File.png
    Folder.png
    FolderNew.png
    FolderShowHidden.png
    FolderUp.png
    Reload.png
  • parent: Another DirectGUI element which has pixel2d as root parent.
    The browser frame is placed centered so a frame for example should have equal sizes in horizontal and vertical directions
    e.g. frameSize=(-250,250,-200,200)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

DirectFolderBrowser-20.11.tar.gz (19.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

DirectFolderBrowser-20.11-py3-none-any.whl (23.1 kB view details)

Uploaded Python 3

File details

Details for the file DirectFolderBrowser-20.11.tar.gz.

File metadata

  • Download URL: DirectFolderBrowser-20.11.tar.gz
  • Upload date:
  • Size: 19.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/3.9.0

File hashes

Hashes for DirectFolderBrowser-20.11.tar.gz
Algorithm Hash digest
SHA256 619b8711a9d7aa114bb4738bdf6c56c0abbed5db2b035c1c0dc5aba5a0954bcb
MD5 08156b22f8508b44a369e1dca7e59d36
BLAKE2b-256 a1453240daff9fdad189934c18a3a232a61b78cef5e0aa5c8edb23adbbbaa133

See more details on using hashes here.

File details

Details for the file DirectFolderBrowser-20.11-py3-none-any.whl.

File metadata

  • Download URL: DirectFolderBrowser-20.11-py3-none-any.whl
  • Upload date:
  • Size: 23.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.51.0 CPython/3.9.0

File hashes

Hashes for DirectFolderBrowser-20.11-py3-none-any.whl
Algorithm Hash digest
SHA256 b4951e278fa28888bfc8e5871adf04d330287778dd49d00653ff14b080f83ed8
MD5 958eeb6de17286235f42e00a7a6f37a6
BLAKE2b-256 ed0d9596369c8fbb0ae8316b7d2f7f6237cad0983fa289e1d04fe0f27ccf2758

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page