Added  File Browser
This commit is contained in:
Jordon Brooks 2016-07-09 10:09:42 +01:00
parent c56a313fc5
commit 2538cc2290
4 changed files with 202 additions and 125 deletions

211
.idea/workspace.xml generated
View file

@ -20,12 +20,12 @@
<favorites_list name="JDE" /> <favorites_list name="JDE" />
</component> </component>
<component name="FileEditorManager"> <component name="FileEditorManager">
<leaf> <leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
<file leaf-file-name="desktop.py" pinned="false" current-in-tab="true"> <file leaf-file-name="desktop.py" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/JDE/Interfaces/desktop.py"> <entry file="file://$PROJECT_DIR$/JDE/Interfaces/desktop.py">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="2227"> <state relative-caret-position="68">
<caret line="131" column="62" selection-start-line="131" selection-start-column="62" selection-end-line="131" selection-end-column="62" /> <caret line="166" column="0" selection-start-line="166" selection-start-column="0" selection-end-line="166" selection-end-column="0" />
<folding> <folding>
<element signature="e#0#14#0" expanded="true" /> <element signature="e#0#14#0" expanded="true" />
</folding> </folding>
@ -33,6 +33,28 @@
</provider> </provider>
</entry> </entry>
</file> </file>
<file leaf-file-name="settings.conf" pinned="false" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/JDE/Settings/settings.conf">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="136">
<caret line="8" column="14" selection-start-line="8" selection-start-column="14" selection-end-line="8" selection-end-column="14" />
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="FileBrowser.py" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/Programs/FileBrowser.py">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="102">
<caret line="7" column="45" selection-start-line="7" selection-start-column="45" selection-end-line="7" selection-end-column="45" />
<folding>
<element signature="e#0#21#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
</leaf> </leaf>
</component> </component>
<component name="FileTemplateManagerImpl"> <component name="FileTemplateManagerImpl">
@ -58,6 +80,7 @@
<option value="$PROJECT_DIR$/JDE/Logs/09-07-2016-08-27AM.log" /> <option value="$PROJECT_DIR$/JDE/Logs/09-07-2016-08-27AM.log" />
<option value="$PROJECT_DIR$/JDE/JDE.py" /> <option value="$PROJECT_DIR$/JDE/JDE.py" />
<option value="$PROJECT_DIR$/JDE/Interfaces/login.py" /> <option value="$PROJECT_DIR$/JDE/Interfaces/login.py" />
<option value="$PROJECT_DIR$/Programs/FileBrowser.py" />
<option value="$PROJECT_DIR$/JDE/Interfaces/desktop.py" /> <option value="$PROJECT_DIR$/JDE/Interfaces/desktop.py" />
<option value="$PROJECT_DIR$/JDE/Settings/settings.conf" /> <option value="$PROJECT_DIR$/JDE/Settings/settings.conf" />
</list> </list>
@ -94,6 +117,7 @@
<foldersAlwaysOnTop value="true" /> <foldersAlwaysOnTop value="true" />
</navigator> </navigator>
<panes> <panes>
<pane id="Scope" />
<pane id="ProjectPane"> <pane id="ProjectPane">
<subPane> <subPane>
<PATH> <PATH>
@ -126,10 +150,45 @@
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" /> <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT> </PATH_ELEMENT>
</PATH> </PATH>
<PATH>
<PATH_ELEMENT>
<option name="myItemId" value="JDE" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="JDE" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="JDE" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="Settings" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
</PATH>
<PATH>
<PATH_ELEMENT>
<option name="myItemId" value="JDE" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="JDE" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="JDE" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="Interfaces" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
</PATH>
</subPane> </subPane>
</pane> </pane>
<pane id="Scratches" /> <pane id="Scratches" />
<pane id="Scope" />
</panes> </panes>
</component> </component>
<component name="PropertiesComponent"> <component name="PropertiesComponent">
@ -380,18 +439,18 @@
<window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32882884" sideWeight="0.5" order="7" side_tool="true" content_ui="tabs" /> <window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32882884" sideWeight="0.5" order="7" side_tool="true" content_ui="tabs" />
<window_info id="Python Console" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32970452" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" /> <window_info id="Python Console" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32970452" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
<window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" /> <window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
<window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32763976" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
<window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" /> <window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
<window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" /> <window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
<window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="true" content_ui="tabs" /> <window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="true" content_ui="tabs" />
<window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.39906833" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
<window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" /> <window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
<window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" /> <window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
<window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" /> <window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
<window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" /> <window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
<window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32659408" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
<window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="2" side_tool="false" content_ui="combo" /> <window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="2" side_tool="false" content_ui="combo" />
<window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" /> <window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
<window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" /> <window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
<window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.39906833" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
</layout> </layout>
</component> </component>
<component name="UnknownFeatures"> <component name="UnknownFeatures">
@ -415,14 +474,11 @@
</component> </component>
<component name="XDebuggerManager"> <component name="XDebuggerManager">
<breakpoint-manager> <breakpoint-manager>
<option name="time" value="4" /> <option name="time" value="5" />
</breakpoint-manager> </breakpoint-manager>
<watches-manager /> <watches-manager />
</component> </component>
<component name="editorHistoryManager"> <component name="editorHistoryManager">
<entry file="file://$PROJECT_DIR$/JDE/Logs/23-06-2016-11-55AM.log" />
<entry file="file://$PROJECT_DIR$/JDE/Logs/23-06-2016-11-56AM.log" />
<entry file="file://$PROJECT_DIR$/JDE/Logs/23-06-2016-11-59AM.log" />
<entry file="file://$PROJECT_DIR$/JDE/Logs/23-06-2016-12-03PM.log" /> <entry file="file://$PROJECT_DIR$/JDE/Logs/23-06-2016-12-03PM.log" />
<entry file="file://$PROJECT_DIR$/JDE/Logs/23-06-2016-12-04PM.log" /> <entry file="file://$PROJECT_DIR$/JDE/Logs/23-06-2016-12-04PM.log" />
<entry file="file://$PROJECT_DIR$/JDE/Logs/23-06-2016-12-08PM.log" /> <entry file="file://$PROJECT_DIR$/JDE/Logs/23-06-2016-12-08PM.log" />
@ -489,11 +545,6 @@
</entry> </entry>
<entry file="file://$PROJECT_DIR$/JDE/Logs/29-06-2016-14-14PM.log" /> <entry file="file://$PROJECT_DIR$/JDE/Logs/29-06-2016-14-14PM.log" />
<entry file="file://$PROJECT_DIR$/README.md"> <entry file="file://$PROJECT_DIR$/README.md">
<provider editor-type-id="text-editor">
<state relative-caret-position="34">
<caret line="2" column="0" selection-start-line="2" selection-start-column="0" selection-end-line="2" selection-end-column="0" />
</state>
</provider>
<provider selected="true" editor-type-id="split-provider[text-editor;MarkdownPreviewEditor]"> <provider selected="true" editor-type-id="split-provider[text-editor;MarkdownPreviewEditor]">
<state split_layout="FIRST"> <state split_layout="FIRST">
<first_editor relative-caret-position="170"> <first_editor relative-caret-position="170">
@ -502,6 +553,11 @@
<second_editor /> <second_editor />
</state> </state>
</provider> </provider>
<provider editor-type-id="text-editor">
<state relative-caret-position="34">
<caret line="2" column="0" selection-start-line="2" selection-start-column="0" selection-end-line="2" selection-end-column="0" />
</state>
</provider>
<provider editor-type-id="MarkdownFxPreviewEditor"> <provider editor-type-id="MarkdownFxPreviewEditor">
<state /> <state />
</provider> </provider>
@ -523,92 +579,51 @@
<entry file="file://$PROJECT_DIR$/JDE/Logs/08-07-2016-12-02PM.log" /> <entry file="file://$PROJECT_DIR$/JDE/Logs/08-07-2016-12-02PM.log" />
<entry file="file://$PROJECT_DIR$/JDE/Logs/08-07-2016-12-04PM.log" /> <entry file="file://$PROJECT_DIR$/JDE/Logs/08-07-2016-12-04PM.log" />
<entry file="file://$PROJECT_DIR$/JDE/Logs/08-07-2016-12-10PM.log" /> <entry file="file://$PROJECT_DIR$/JDE/Logs/08-07-2016-12-10PM.log" />
<entry file="file://$PROJECT_DIR$/JDE/Logs/09-07-2016-08-15AM.log"> <entry file="file://$PROJECT_DIR$/JDE/Logs/09-07-2016-08-15AM.log" />
<provider selected="true" editor-type-id="text-editor"> <entry file="file://$PROJECT_DIR$/JDE/Logs/09-07-2016-08-17AM.log" />
<state relative-caret-position="119"> <entry file="file://$PROJECT_DIR$/JDE/Logs/09-07-2016-08-21AM.log" />
<caret line="7" column="76" selection-start-line="7" selection-start-column="45" selection-end-line="7" selection-end-column="76" /> <entry file="file://$PROJECT_DIR$/JDE/Logs/09-07-2016-08-22AM.log" />
<folding /> <entry file="file://$PROJECT_DIR$/JDE/Logs/09-07-2016-08-26AM.log" />
</state> <entry file="file://$PROJECT_DIR$/JDE/Logs/09-07-2016-08-27AM.log" />
</provider> <entry file="file://$PROJECT_DIR$/JDE/Logs/09-07-2016-08-27AM.log" />
</entry> <entry file="file://$PROJECT_DIR$/JDE/Logs/09-07-2016-08-33AM.log" />
<entry file="file://$PROJECT_DIR$/JDE/Logs/09-07-2016-08-17AM.log">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="0">
<caret line="0" column="0" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/JDE/Logs/09-07-2016-08-21AM.log">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="0">
<caret line="0" column="0" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/JDE/Logs/09-07-2016-08-22AM.log">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="0">
<caret line="0" column="0" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/JDE/Logs/09-07-2016-08-26AM.log">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="-153">
<caret line="0" column="0" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/JDE/Logs/09-07-2016-08-27AM.log">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="0">
<caret line="0" column="0" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/JDE/Logs/09-07-2016-08-27AM.log">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="-1380">
<caret line="0" column="0" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/JDE/Logs/09-07-2016-08-33AM.log">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="-207">
<caret line="0" column="0" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/JDE/JDE.py"> <entry file="file://$PROJECT_DIR$/JDE/JDE.py">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="17"> <state relative-caret-position="17">
<caret line="4" column="10" selection-start-line="4" selection-start-column="10" selection-end-line="4" selection-end-column="10" /> <caret line="4" column="10" selection-start-line="4" selection-start-column="10" selection-end-line="4" selection-end-column="10" />
<folding>
<element signature="e#24#38#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/JDE/Logs/09-07-2016-09-01AM.log">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="-357">
<caret line="0" column="0" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
<folding />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/JDE/Logs/09-07-2016-09-01AM.log" />
<entry file="file://$PROJECT_DIR$/JDE/Interfaces/login.py"> <entry file="file://$PROJECT_DIR$/JDE/Interfaces/login.py">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="221"> <state relative-caret-position="221">
<caret line="147" column="52" selection-start-line="147" selection-start-column="52" selection-end-line="147" selection-end-column="52" /> <caret line="147" column="52" selection-start-line="147" selection-start-column="52" selection-end-line="147" selection-end-column="52" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/JDE/Logs/09-07-2016-09-27AM.log" />
<entry file="file://$PROJECT_DIR$/Programs/FileBrowser.py">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="102">
<caret line="7" column="45" selection-start-line="7" selection-start-column="45" selection-end-line="7" selection-end-column="45" />
<folding>
<element signature="e#0#21#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$USER_HOME$/PycharmProjects/tkinterWindows/myProgram.py">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="0">
<caret line="0" column="3" selection-start-line="0" selection-start-column="3" selection-end-line="0" selection-end-column="3" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/JDE/Interfaces/desktop.py">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="68">
<caret line="166" column="0" selection-start-line="166" selection-start-column="0" selection-end-line="166" selection-end-column="0" />
<folding> <folding>
<element signature="e#0#14#0" expanded="true" /> <element signature="e#0#14#0" expanded="true" />
</folding> </folding>
@ -617,21 +632,11 @@
</entry> </entry>
<entry file="file://$PROJECT_DIR$/JDE/Settings/settings.conf"> <entry file="file://$PROJECT_DIR$/JDE/Settings/settings.conf">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="119"> <state relative-caret-position="136">
<caret line="7" column="24" selection-start-line="7" selection-start-column="24" selection-end-line="7" selection-end-column="24" /> <caret line="8" column="14" selection-start-line="8" selection-start-column="14" selection-end-line="8" selection-end-column="14" />
<folding /> <folding />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/JDE/Interfaces/desktop.py">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="2227">
<caret line="131" column="62" selection-start-line="131" selection-start-column="62" selection-end-line="131" selection-end-column="62" />
<folding>
<element signature="e#0#14#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
</component> </component>
</project> </project>

View file

@ -13,6 +13,7 @@ from Programs import imageViewer
from Programs import minesweeper from Programs import minesweeper
from Programs import terminal from Programs import terminal
from Programs.webEdit import htmlEdit as webEdit from Programs.webEdit import htmlEdit as webEdit
from Programs import FileBrowser
import threading import threading
desktopLog = logging.getLogger(__name__) desktopLog = logging.getLogger(__name__)
@ -28,7 +29,7 @@ except Exception as e:
class desktop: class desktop:
def box(self, event): def box(self, event):
desktopLog.debug("Running "+desktop.box.__name__) desktopLog.debug("Running " + desktop.box.__name__)
try: try:
if (self.clicked == False): if (self.clicked == False):
self.searchvar.set("") self.searchvar.set("")
@ -38,7 +39,7 @@ class desktop:
desktopLog.error(str(e)) desktopLog.error(str(e))
def search_internet(self, event): def search_internet(self, event):
desktopLog.debug("Running "+desktop.search_internet.__name__) desktopLog.debug("Running " + desktop.search_internet.__name__)
# TODO: Find a way to implement a browser # TODO: Find a way to implement a browser
try: try:
webbrowser.open_new_tab("https://www.google.co.uk/#q=" + self.searchvar.get().replace(" ", "+")) webbrowser.open_new_tab("https://www.google.co.uk/#q=" + self.searchvar.get().replace(" ", "+"))
@ -47,7 +48,7 @@ class desktop:
def reposition(self, event): def reposition(self, event):
if self.tempWidth != self.window.winfo_width() or self.tempHeight != self.window.winfo_height(): if self.tempWidth != self.window.winfo_width() or self.tempHeight != self.window.winfo_height():
desktopLog.debug("Running "+desktop.reposition.__name__) desktopLog.debug("Running " + desktop.reposition.__name__)
try: try:
self.cHeight = self.window.winfo_height() self.cHeight = self.window.winfo_height()
self.cWidth = self.window.winfo_width() self.cWidth = self.window.winfo_width()
@ -81,12 +82,12 @@ class desktop:
self.canvas.create_image(0, 0, image=self.background_image, anchor=NW, tag="background") self.canvas.create_image(0, 0, image=self.background_image, anchor=NW, tag="background")
except Exception as e: except Exception as e:
desktopLog.error(str(e)) desktopLog.error(str(e))
threading.Thread(target=searchPlaceRepos, daemon=True).start() threading.Thread(target=searchPlaceRepos, daemon=True).start()
threading.Thread(target=toolbarPlaceRepos, daemon=True).start() threading.Thread(target=toolbarPlaceRepos, daemon=True).start()
threading.Thread(target=notifyBarPlaceRepos, daemon=True).start() threading.Thread(target=notifyBarPlaceRepos, daemon=True).start()
threading.Thread(target=resizeBackground, daemon=True).start() threading.Thread(target=resizeBackground, daemon=True).start()
self.windowX = self.window.winfo_x() self.windowX = self.window.winfo_x()
self.windowY = (self.window.winfo_y() + self.window.winfo_height()) self.windowY = (self.window.winfo_y() + self.window.winfo_height())
@ -95,7 +96,7 @@ class desktop:
desktopLog.error(str(e)) desktopLog.error(str(e))
def fullScreen(self, event): def fullScreen(self, event):
desktopLog.debug("Running "+desktop.fullScreen.__name__) desktopLog.debug("Running " + desktop.fullScreen.__name__)
try: try:
if self.max == 0: if self.max == 0:
self.window.attributes('-fullscreen', True) self.window.attributes('-fullscreen', True)
@ -107,7 +108,7 @@ class desktop:
desktopLog.error(str(e)) desktopLog.error(str(e))
def clockTick(self): def clockTick(self):
desktopLog.debug("Running "+desktop.clockTick.__name__) desktopLog.debug("Running " + desktop.clockTick.__name__)
try: try:
self.desktopRefresh() self.desktopRefresh()
# cTime = time.strftime("%H:%M:%S") # cTime = time.strftime("%H:%M:%S")
@ -123,7 +124,7 @@ class desktop:
desktopLog.error(str(e)) desktopLog.error(str(e))
def createSearch(self): def createSearch(self):
desktopLog.debug("Running "+desktop.createSearch.__name__) desktopLog.debug("Running " + desktop.createSearch.__name__)
try: try:
self.searchText = Label(self.window, text="Search for: ") self.searchText = Label(self.window, text="Search for: ")
self.searchvar = StringVar() self.searchvar = StringVar()
@ -136,7 +137,7 @@ class desktop:
desktopLog.error(str(e)) desktopLog.error(str(e))
def contextMenuPopup(self, event): def contextMenuPopup(self, event):
desktopLog.debug("Running "+desktop.contextMenuPopup.__name__) desktopLog.debug("Running " + desktop.contextMenuPopup.__name__)
try: try:
# start.start(self.menuColour, event.x_root, event.y_root) # start.start(self.menuColour, event.x_root, event.y_root)
self.contextMenu.post(event.x_root, event.y_root) self.contextMenu.post(event.x_root, event.y_root)
@ -151,12 +152,15 @@ class desktop:
self.contextMenu.add_command(label=label, command=command, state=state) self.contextMenu.add_command(label=label, command=command, state=state)
def createContextMenu(self): def createContextMenu(self):
desktopLog.debug("Running "+desktop.createContextMenu.__name__) desktopLog.debug("Running " + desktop.createContextMenu.__name__)
try: try:
self.contextMenu = Menu(self.window, tearoff=0, bg=self.contextMenuColour) self.contextMenu = Menu(self.window, tearoff=0, bg=self.contextMenuColour, bd=0, relief=FLAT)
self.games = Menu(self.contextMenu, bg=self.contextMenuColour) self.games = Menu(self.contextMenu, bg=self.contextMenuColour, tearoff=0, relief=FLAT, bd=0)
self.applications = Menu(self.contextMenu, bg=self.contextMenuColour) self.applications = Menu(self.contextMenu, bg=self.contextMenuColour, tearoff=0, relief=FLAT, bd=0)
def FileBrowserRun():
FileBrowser.fileBrowser(self.window, os.path.realpath(os.path.dirname(__file__+"../../../")))
def minesweeperRun(): def minesweeperRun():
minesweeper.mine_sweeper(self.window, self.menuColour) minesweeper.mine_sweeper(self.window, self.menuColour)
@ -178,6 +182,7 @@ class desktop:
self.contextMenu.add_cascade(label="Games", menu=self.games) self.contextMenu.add_cascade(label="Games", menu=self.games)
self.contextMenu.add_cascade(label="Applications", menu=self.applications) self.contextMenu.add_cascade(label="Applications", menu=self.applications)
self.applications.add_command(label="File Browser", command=FileBrowserRun)
self.applications.add_command(label="Jpad", command=jpadEdit) self.applications.add_command(label="Jpad", command=jpadEdit)
self.applications.add_command(label="WebEdit", command=webEditor) self.applications.add_command(label="WebEdit", command=webEditor)
self.applications.add_command(label="View Images", command=viewImage) self.applications.add_command(label="View Images", command=viewImage)
@ -196,7 +201,7 @@ class desktop:
def desktopRefresh(self): def desktopRefresh(self):
try: try:
desktopLog.debug("Running "+desktop.desktopRefresh.__name__) desktopLog.debug("Running " + desktop.desktopRefresh.__name__)
self.fileImage = PhotoImage(file="JDE/Images/file.png") self.fileImage = PhotoImage(file="JDE/Images/file.png")
self.f = [] self.f = []
self.l = [] self.l = []
@ -231,7 +236,7 @@ class desktop:
self.space += 80 self.space += 80
self.f.append(Button(self.window, image=self.fileImage)) self.f.append(Button(self.window, image=self.fileImage, relief=FLAT))
self.f[files].place(x=int(80), y=int(20) + self.space, width=40, height=40) self.f[files].place(x=int(80), y=int(20) + self.space, width=40, height=40)
@ -252,14 +257,14 @@ class desktop:
desktopLog.error(str(e)) desktopLog.error(str(e))
def refresh(self): def refresh(self):
desktopLog.debug("Running "+desktop.refresh.__name__) desktopLog.debug("Running " + desktop.refresh.__name__)
try: try:
self.desktopRefresh() self.desktopRefresh()
except Exception as e: except Exception as e:
desktopLog.error(str(e)) desktopLog.error(str(e))
def createStart(self): def createStart(self):
desktopLog.debug("Running "+desktop.createStart.__name__) desktopLog.debug("Running " + desktop.createStart.__name__)
try: try:
start.start(self.menuColour, int(0), int(self.window.winfo_height())) start.start(self.menuColour, int(0), int(self.window.winfo_height()))
except Exception as e: except Exception as e:
@ -267,7 +272,7 @@ class desktop:
def createBackground(self): def createBackground(self):
try: try:
desktopLog.debug("Running "+desktop.createBackground.__name__) desktopLog.debug("Running " + desktop.createBackground.__name__)
self.image = PIL.Image.open(self.background) self.image = PIL.Image.open(self.background)
self.background_image = PIL.ImageTk.PhotoImage(self.image) self.background_image = PIL.ImageTk.PhotoImage(self.image)
self.canvas.background_image = self.background_image self.canvas.background_image = self.background_image
@ -277,14 +282,14 @@ class desktop:
desktopLog.error(str(e)) desktopLog.error(str(e))
def createIcon(self): def createIcon(self):
desktopLog.debug("Running"+desktop.createIcon.__name__) desktopLog.debug("Running" + desktop.createIcon.__name__)
try: try:
self.window.wm_iconbitmap("System/JordonOS Logo.ico") self.window.wm_iconbitmap("System/JordonOS Logo.ico")
except Exception as e: except Exception as e:
desktopLog.error(str(e)) desktopLog.error(str(e))
def createWindow(self): def createWindow(self):
desktopLog.debug("Running "+desktop.createWindow.__name__) desktopLog.debug("Running " + desktop.createWindow.__name__)
try: try:
self.window = Tk() self.window = Tk()
self.window.title("Jordon's Desktop Environment") self.window.title("Jordon's Desktop Environment")
@ -310,7 +315,10 @@ class desktop:
self.displayTime = Label(self.notifcationBar, text=self.cTime, bg=self.menuColour, font=("System", 20)) self.displayTime = Label(self.notifcationBar, text=self.cTime, bg=self.menuColour, font=("System", 20))
self.displayTime.pack(side=RIGHT) self.displayTime.pack(side=RIGHT)
self.window.bind("<F5>", self.refresh) def manFefresh(event):
self.refresh()
self.window.bind("<F5>", manFefresh)
self.window.bind("<Escape>", self.fullScreen) self.window.bind("<Escape>", self.fullScreen)
self.window.bind("<Configure>", self.reposition) self.window.bind("<Configure>", self.reposition)
@ -328,7 +336,7 @@ class desktop:
desktopLog.error(str(e)) desktopLog.error(str(e))
def __init__(self, windowTitle="Desktop Environment", width="1920", height="1080", minWidth="", username=""): def __init__(self, windowTitle="Desktop Environment", width="1920", height="1080", minWidth="", username=""):
desktopLog.debug("Running "+desktop.__init__.__name__) desktopLog.debug("Running " + desktop.__init__.__name__)
try: try:
self.width = width self.width = width
self.height = height self.height = height

View file

@ -6,4 +6,4 @@ colour = "#a0fd44"
startPic = "JDE/Images/start.png" startPic = "JDE/Images/start.png"
contextMenuColour = "#a0fd44" contextMenuColour = "#a0fd44"
resizeBackground = False # This can be VERY slow! resizeBackground = False # This can be VERY slow!
version = "1.4.0 ALPHA" version = "1.5.0 ALPHA"

64
Programs/FileBrowser.py Normal file
View file

@ -0,0 +1,64 @@
from tkinter import *
import os
path = "E:/programming/"
class fileBrowser:
def update(self):
self.path = os.path.realpath(self.path)
self.folderListbox.delete(0, END)
self.fileListbox.delete(0, END)
self.addressBox.delete(0, END)
self.addressBox.insert(0, self.path)
self.folderListbox.insert(0, "Back")
for item in os.listdir(self.path):
if not self.path.startswith("."):
if os.path.isdir(os.path.join(self.path, item)):
self.folderListbox.insert(END, item)
else:
self.fileListbox.insert(END, item)
def createWidgets(self):
self.folderListbox = Listbox(self.root)
self.fileListbox = Listbox(self.root)
self.addressBox = Entry(self.root)
self.addressBox.insert(0, self.path)
self.folderListbox.insert(0, "Back")
def test(event):
if self.folderListbox.get(self.folderListbox.curselection()) == "Back":
self.path = os.path.abspath(os.path.join(self.path, os.pardir))
else:
self.path = os.path.join(self.path, self.folderListbox.get(self.folderListbox.curselection()))
self.update()
def refresh(event):
self.path = os.path.abspath(self.addressBox.get())
self.update()
def upd(event):
self.update()
self.update()
self.addressBox.bind("<Return>", refresh)
self.folderListbox.bind("<F5>", upd)
self.folderListbox.bind('<Double-1>', test)
self.addressBox.pack(side=TOP, expand=NO, fill=X)
self.folderListbox.pack(side=LEFT, expand=YES, fill=BOTH)
self.fileListbox.pack(side=LEFT, expand=YES, fill=BOTH)
def __init__(self, master, path):
self.path = os.path.abspath(os.path.dirname(os.path.realpath(path)))
self.root = Toplevel(master)
self.root.title("File Browser")
self.createWidgets()
self.root.mainloop()