1
0
Fork 0

Random commit

master
Ambrose Chua 2015-10-14 14:26:16 +08:00
parent 130a2c33b9
commit d667c2cad9
13 changed files with 454 additions and 244 deletions

View File

@ -7,11 +7,18 @@
</component>
<component name="ChangeListManager">
<list default="true" id="cdb932d9-7e58-4d94-93a9-e7b232ef17da" name="Default" comment="TrackList">
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/src/io/makerforce/undefined/model/Artist.java" />
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/src/io/makerforce/undefined/view/CoverListController.java" />
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/src/io/makerforce/undefined/model/Item.java" />
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/src/io/makerforce/undefined/model/ItemList.java" />
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/src/io/makerforce/undefined/model/Library.java" />
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/src/io/makerforce/undefined/util/TestClasses.java" />
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/src/io/makerforce/undefined/view/coverlist.fxml" />
<change type="MOVED" beforePath="$PROJECT_DIR$/src/io/makerforce/undefined/model/Playlist.java" afterPath="$PROJECT_DIR$/src/io/makerforce/undefined/model/Album.java" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/io/makerforce/undefined/view/CoverItemController.java" afterPath="$PROJECT_DIR$/src/io/makerforce/undefined/view/CoverItemController.java" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/io/makerforce/undefined/view/InterfaceController.java" afterPath="$PROJECT_DIR$/src/io/makerforce/undefined/view/InterfaceController.java" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/io/makerforce/undefined/Main.java" afterPath="$PROJECT_DIR$/src/io/makerforce/undefined/Main.java" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/io/makerforce/undefined/model/Track.java" afterPath="$PROJECT_DIR$/src/io/makerforce/undefined/model/Track.java" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/io/makerforce/undefined/view/TrackListController.java" afterPath="$PROJECT_DIR$/src/io/makerforce/undefined/view/TrackListController.java" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/io/makerforce/undefined/view/coveritem.fxml" afterPath="$PROJECT_DIR$/src/io/makerforce/undefined/view/coveritem.fxml" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/io/makerforce/undefined/view/interface.fxml" afterPath="$PROJECT_DIR$/src/io/makerforce/undefined/view/interface.fxml" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/io/makerforce/undefined/view/tracklist.fxml" afterPath="$PROJECT_DIR$/src/io/makerforce/undefined/view/tracklist.fxml" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/.idea/workspace.xml" afterPath="$PROJECT_DIR$/.idea/workspace.xml" />
@ -75,29 +82,28 @@
</component>
<component name="FileEditorManager">
<leaf>
<file leaf-file-name="TrackListController.java" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/io/makerforce/undefined/view/TrackListController.java">
<file leaf-file-name="Track.java" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/io/makerforce/undefined/model/Track.java">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0">
<caret line="44" column="0" selection-start-line="44" selection-start-column="0" selection-end-line="44" selection-end-column="0" />
<caret line="37" column="4" selection-start-line="37" selection-start-column="4" selection-end-line="37" selection-end-column="4" />
<folding>
<element signature="imports" expanded="false" />
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
<file leaf-file-name="interface.fxml" pinned="false" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/src/io/makerforce/undefined/view/interface.fxml">
<provider editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0">
<caret line="32" column="35" selection-start-line="32" selection-start-column="35" selection-end-line="32" selection-end-column="35" />
<folding />
<file leaf-file-name="TestClasses.java" pinned="false" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/src/io/makerforce/undefined/util/TestClasses.java">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.8659794">
<caret line="30" column="0" selection-start-line="30" selection-start-column="0" selection-end-line="30" selection-end-column="0" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
<provider selected="true" editor-type-id="JavaFX-Scene-Builder">
<state />
</provider>
</entry>
</file>
</leaf>
@ -106,6 +112,7 @@
<option name="RECENT_TEMPLATES">
<list>
<option value="JavaFXApplication" />
<option value="Interface" />
<option value="Class" />
</list>
</option>
@ -141,21 +148,33 @@
<option value="$PROJECT_DIR$/src/io/makerforce/undefined/model/Util.java" />
<option value="$PROJECT_DIR$/src/io/makerforce/undefined/view/splash.fxml" />
<option value="$PROJECT_DIR$/README.md" />
<option value="$PROJECT_DIR$/src/io/makerforce/undefined/model/Playlist.java" />
<option value="$PROJECT_DIR$/src/io/makerforce/undefined/model/Playback.java" />
<option value="$PROJECT_DIR$/src/io/makerforce/undefined/model/Track.java" />
<option value="$PROJECT_DIR$/src/io/makerforce/undefined/view/interface-test.fxml" />
<option value="$PROJECT_DIR$/src/io/makerforce/undefined/view/coveritem" />
<option value="$PROJECT_DIR$/src/io/makerforce/undefined/tools/URLProperty.java" />
<option value="$PROJECT_DIR$/.idea/workspace.xml" />
<option value="$PROJECT_DIR$/src/io/makerforce/undefined/Main.java" />
<option value="$PROJECT_DIR$/src/io/makerforce/undefined/view/TrackCollection.java" />
<option value="$PROJECT_DIR$/src/io/makerforce/undefined/view/InterfaceController.java" />
<option value="$PROJECT_DIR$/src/io/makerforce/undefined/view/CoverItemController.java" />
<option value="$PROJECT_DIR$/src/io/makerforce/undefined/view/coveritem.fxml" />
<option value="$PROJECT_DIR$/src/io/makerforce/undefined/view/tracklist.fxml" />
<option value="$PROJECT_DIR$/src/io/makerforce/undefined/view/TrackListController.java" />
<option value="$PROJECT_DIR$/src/io/makerforce/undefined/view/interface.fxml" />
<option value="$PROJECT_DIR$/src/io/makerforce/undefined/view/coverlist.fxml" />
<option value="$PROJECT_DIR$/src/io/makerforce/undefined/model/ItemView.java" />
<option value="$PROJECT_DIR$/src/io/makerforce/undefined/model/ItemCollection.java" />
<option value="$PROJECT_DIR$/src/io/makerforce/undefined/view/TrackListController.java" />
<option value="$PROJECT_DIR$/src/io/makerforce/undefined/view/CoverItemController.java" />
<option value="$PROJECT_DIR$/src/io/makerforce/undefined/model/Item.java" />
<option value="$PROJECT_DIR$/src/io/makerforce/undefined/model/Playlist.java" />
<option value="$PROJECT_DIR$/src/io/makerforce/undefined/view/InterfaceController.java" />
<option value="$PROJECT_DIR$/src/io/makerforce/undefined/view/CoverListController.java" />
<option value="$PROJECT_DIR$/src/io/makerforce/undefined/model/ItemList.java" />
<option value="$PROJECT_DIR$/src/io/makerforce/undefined/model/AlbumList.java" />
<option value="$PROJECT_DIR$/src/io/makerforce/undefined/model/TrackList.java" />
<option value="$PROJECT_DIR$/src/io/makerforce/undefined/model/Album.java" />
<option value="$PROJECT_DIR$/src/io/makerforce/undefined/model/Artist.java" />
<option value="$PROJECT_DIR$/src/io/makerforce/undefined/model/Library.java" />
<option value="$PROJECT_DIR$/src/io/makerforce/undefined/model/Track.java" />
<option value="$PROJECT_DIR$/src/io/makerforce/undefined/util/TestClasses.java" />
</list>
</option>
</component>
@ -175,9 +194,8 @@
</component>
<component name="PhpWorkspaceProjectConfiguration" backward_compatibility_performed="true" />
<component name="ProjectFrameBounds">
<option name="y" value="23" />
<option name="width" value="1366" />
<option name="height" value="741" />
<option name="height" value="768" />
</component>
<component name="ProjectInspectionProfilesVisibleTreeState">
<entry key="Project Default">
@ -223,7 +241,7 @@
<sortByType />
</navigator>
<panes>
<pane id="Scratches" />
<pane id="PackagesPane" />
<pane id="ProjectPane">
<subPane>
<PATH>
@ -282,6 +300,28 @@
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
</PATH>
<PATH>
<PATH_ELEMENT>
<option name="myItemId" value="Undefined" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="Undefined" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="src" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="undefined" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
<PATH_ELEMENT>
<option name="myItemId" value="util" />
<option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
</PATH_ELEMENT>
</PATH>
<PATH>
<PATH_ELEMENT>
<option name="myItemId" value="Undefined" />
@ -320,8 +360,8 @@
</PATH>
</subPane>
</pane>
<pane id="PackagesPane" />
<pane id="Scope" />
<pane id="Scratches" />
</panes>
</component>
<component name="PropertiesComponent">
@ -336,10 +376,10 @@
<property name="dynamic.classpath" value="false" />
<property name="MemberChooser.copyJavadoc" value="false" />
<property name="aspect.path.notification.shown" value="true" />
<property name="FullScreen" value="false" />
<property name="FullScreen" value="true" />
<property name="last_opened_file_path" value="$PROJECT_DIR$/META-INF/MANIFEST.MF" />
<property name="restartRequiresConfirmation" value="true" />
<property name="settings.editor.selected.configurable" value="editor.preferences.import" />
<property name="settings.editor.selected.configurable" value="preferences.keymap" />
<property name="settings.editor.splitter.proportion" value="0.2" />
<property name="project.structure.last.edited" value="Artifacts" />
<property name="project.structure.proportion" value="0.15" />
@ -352,6 +392,7 @@
</component>
<component name="RecentsManager">
<key name="CreateClassDialog.RecentsKey">
<recent name="io.makerforce.undefined.model" />
<recent name="io.makerforce.undefined.view" />
</key>
<key name="CopyFile.RECENT_KEYS">
@ -688,7 +729,8 @@
<workItem from="1444621820059" duration="209000" />
<workItem from="1444622061126" duration="548000" />
<workItem from="1444622643506" duration="749000" />
<workItem from="1444628999813" duration="20132000" />
<workItem from="1444628999813" duration="21183000" />
<workItem from="1444700132845" duration="7692000" />
</task>
<task id="LOCAL-00001" summary="Initial Commit">
<created>1444218455154</created>
@ -750,11 +792,17 @@
<option name="project" value="LOCAL" />
<updated>1444647497850</updated>
</task>
<option name="localTasksCounter" value="11" />
<task id="LOCAL-00011" summary="TrackList">
<created>1444693502053</created>
<option name="number" value="00011" />
<option name="project" value="LOCAL" />
<updated>1444693502053</updated>
</task>
<option name="localTasksCounter" value="12" />
<servers />
</component>
<component name="TimeTrackingManager">
<option name="totallyTimeSpent" value="51517000" />
<option name="totallyTimeSpent" value="60260000" />
</component>
<component name="TodoView">
<todo-panel id="selected-file">
@ -766,27 +814,25 @@
</todo-panel>
</component>
<component name="ToolWindowManager">
<frame x="0" y="23" width="1366" height="741" extended-state="6" />
<frame x="0" y="0" width="1366" height="768" extended-state="0" />
<editor active="false" />
<layout>
<window_info id="Palette" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
<window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32872504" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
<window_info id="Messages" active="true" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.28878647" sideWeight="0.5" order="13" side_tool="false" content_ui="tabs" />
<window_info id="Messages" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.23142858" sideWeight="0.5" order="13" side_tool="false" content_ui="tabs" />
<window_info id="Palette&#9;" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
<window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32931423" sideWeight="0.5" order="8" side_tool="false" content_ui="tabs" />
<window_info id="Application Servers" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="10" side_tool="false" content_ui="tabs" />
<window_info id="Maven Projects" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
<window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.2976639" sideWeight="0.5" order="5" 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" weight="0.20045215" sideWeight="0.5" order="9" side_tool="false" content_ui="tabs" />
<window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.40245774" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
<window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32780707" 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="true" weight="0.26714286" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
<window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32714286" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
<window_info id="Designer" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
<window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.2205438" sideWeight="0.6703755" order="0" side_tool="false" content_ui="combo" />
<window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.20996979" sideWeight="0.6703755" order="0" side_tool="false" content_ui="combo" />
<window_info id="Database" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
<window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32931423" 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" weight="0.24982457" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
<window_info id="UI Designer" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
<window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32980332" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
<window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32930514" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
<window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" 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" 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" weight="0.33" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
@ -795,39 +841,11 @@
<window_info id="Profiler" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="14" 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" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
<window_info id="Changes" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="11" side_tool="false" content_ui="tabs" />
<window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.2976639" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
<window_info id="JetGradle" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
<window_info id="Problems" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="12" side_tool="false" content_ui="tabs" />
<window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32931423" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
</layout>
<layout-to-restore>
<window_info id="Palette" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" 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" 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" 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="SLIDING" type="SLIDING" visible="false" weight="0.4" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
<window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32931423" sideWeight="0.5" order="8" side_tool="false" content_ui="tabs" />
<window_info id="Application Servers" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="10" side_tool="false" content_ui="tabs" />
<window_info id="Maven Projects" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
<window_info id="Designer" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
<window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="2" side_tool="false" content_ui="combo" />
<window_info id="Profiler" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="14" side_tool="false" content_ui="tabs" />
<window_info id="Database" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
<window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.24982457" 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" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
<window_info id="UI Designer" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
<window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
<window_info id="Changes" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="11" side_tool="false" content_ui="tabs" />
<window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32872504" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
<window_info id="Messages" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.28949356" sideWeight="0.5" order="13" side_tool="false" content_ui="tabs" />
<window_info id="Palette&#9;" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
<window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.2976639" sideWeight="0.5" order="5" 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" weight="0.20045215" sideWeight="0.5" order="9" side_tool="false" content_ui="tabs" />
<window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.20937264" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
<window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32780707" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
<window_info id="JetGradle" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
<window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.16469261" sideWeight="0.6703755" order="0" side_tool="false" content_ui="combo" />
<window_info id="Problems" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="12" side_tool="false" content_ui="tabs" />
<window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32931423" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
<window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32980332" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
</layout-to-restore>
</component>
<component name="Vcs.Log.UiProperties">
<option name="RECENTLY_FILTERED_USER_GROUPS">
@ -857,7 +875,7 @@
</component>
<component name="XDebuggerManager">
<breakpoint-manager>
<option name="time" value="1" />
<option name="time" value="2" />
</breakpoint-manager>
<watches-manager />
</component>
@ -866,7 +884,7 @@
<option name="FILTER_TARGETS" value="false" />
</component>
<component name="editorHistoryManager">
<entry file="file://$PROJECT_DIR$/src/io/makerforce/undefined/model/Playlist.java">
<entry file="file://$PROJECT_DIR$/src/io/makerforce/undefined/model/ItemList.java">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0">
<caret line="2" column="22" selection-start-line="2" selection-start-column="22" selection-end-line="2" selection-end-column="22" />
@ -892,7 +910,7 @@
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/io/makerforce/undefined/model/Playlist.java">
<entry file="file://$PROJECT_DIR$/src/io/makerforce/undefined/model/ItemList.java">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0">
<caret line="2" column="22" selection-start-line="2" selection-start-column="22" selection-end-line="2" selection-end-column="22" />
@ -918,7 +936,7 @@
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/io/makerforce/undefined/model/Playlist.java">
<entry file="file://$PROJECT_DIR$/src/io/makerforce/undefined/model/ItemList.java">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0">
<caret line="2" column="22" selection-start-line="2" selection-start-column="22" selection-end-line="2" selection-end-column="22" />
@ -944,7 +962,7 @@
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/io/makerforce/undefined/model/Playlist.java">
<entry file="file://$PROJECT_DIR$/src/io/makerforce/undefined/model/ItemList.java">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0">
<caret line="2" column="22" selection-start-line="2" selection-start-column="22" selection-end-line="2" selection-end-column="22" />
@ -970,7 +988,7 @@
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/io/makerforce/undefined/model/Playlist.java">
<entry file="file://$PROJECT_DIR$/src/io/makerforce/undefined/model/ItemList.java">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0">
<caret line="2" column="22" selection-start-line="2" selection-start-column="22" selection-end-line="2" selection-end-column="22" />
@ -996,7 +1014,7 @@
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/io/makerforce/undefined/model/Playlist.java">
<entry file="file://$PROJECT_DIR$/src/io/makerforce/undefined/model/ItemList.java">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0">
<caret line="2" column="0" selection-start-line="2" selection-start-column="0" selection-end-line="2" selection-end-column="0" />
@ -1111,37 +1129,21 @@
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/io/makerforce/undefined/model/Util.java">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.12195122">
<caret line="7" column="10" selection-start-line="7" selection-start-column="10" selection-end-line="7" selection-end-column="10" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/LICENSE">
<provider editor-type-id="com.intellij.database.editor.CsvTableFileEditorProvider">
<state />
</provider>
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.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$/src/io/makerforce/undefined/model/Playlist.java">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.048154093">
<caret line="2" column="22" selection-start-line="2" selection-start-column="22" selection-end-line="2" selection-end-column="22" />
<folding />
</state>
<provider editor-type-id="com.intellij.database.editor.CsvTableFileEditorProvider">
<state />
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/META-INF/MANIFEST.MF">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.04356244">
<caret line="3" column="0" selection-start-line="3" selection-start-column="0" selection-end-line="3" selection-end-column="0" />
<folding />
</state>
</provider>
</entry>
@ -1149,50 +1151,19 @@
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.25398406">
<caret line="17" column="0" selection-start-line="17" selection-start-column="0" selection-end-line="17" selection-end-column="0" />
<folding />
</state>
</provider>
<provider editor-type-id="MultiMarkdownFxPreviewEditor">
<state />
</provider>
<provider editor-type-id="MultiMarkdownFxHtmlEditor">
<state />
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/io/makerforce/undefined/model/Track.java">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.35714287">
<caret line="16" column="23" selection-start-line="16" selection-start-column="23" selection-end-line="16" selection-end-column="23" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/io/makerforce/undefined/Main.java">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0">
<caret line="2" column="0" selection-start-line="2" selection-start-column="0" selection-end-line="2" selection-end-column="0" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/io/makerforce/undefined/view/CoverItemController.java">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.19646366">
<caret line="14" column="35" selection-start-line="14" selection-start-column="35" selection-end-line="14" selection-end-column="35" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
<provider editor-type-id="MultiMarkdownFxPreviewEditor">
<state />
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/io/makerforce/undefined/view/tracklist.fxml">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.21233569">
<caret line="14" column="70" selection-start-line="14" selection-start-column="70" selection-end-line="14" selection-end-column="70" />
<state vertical-scroll-proportion="-0.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>
@ -1202,12 +1173,12 @@
</entry>
<entry file="file://$PROJECT_DIR$/src/io/makerforce/undefined/view/coveritem.fxml">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.16683519">
<caret line="11" column="40" selection-start-line="11" selection-start-column="40" selection-end-line="11" selection-end-column="40" />
<state vertical-scroll-proportion="-5.172414">
<caret line="10" column="53" selection-start-line="10" selection-start-column="53" selection-end-line="10" selection-end-column="53" />
<folding>
<marker date="1444660515000" expanded="true" signature="-1:-1" placeholder="..." />
<marker date="1444660515000" expanded="true" signature="-1:-1" placeholder="..." />
<marker date="1444660515000" expanded="true" signature="-1:-1" placeholder="..." />
<marker date="1444660515000" expanded="true" signature="753:1746" placeholder="..." />
<marker date="1444660515000" expanded="true" signature="1060:1690" placeholder="..." />
<marker date="1444660515000" expanded="true" signature="1150:1230" placeholder="..." />
</folding>
</state>
</provider>
@ -1215,33 +1186,150 @@
<state />
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/io/makerforce/undefined/view/interface.fxml">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="-3.6206896">
<caret line="7" column="0" selection-start-line="7" selection-start-column="0" selection-end-line="7" selection-end-column="0" />
<folding />
</state>
</provider>
<provider editor-type-id="JavaFX-Scene-Builder">
<state />
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/io/makerforce/undefined/Main.java">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.46391752">
<caret line="16" column="13" selection-start-line="16" selection-start-column="13" selection-end-line="16" selection-end-column="13" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/io/makerforce/undefined/view/CoverItemController.java">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.7589286">
<caret line="42" column="19" selection-start-line="42" selection-start-column="19" selection-end-line="42" selection-end-column="19" />
<folding>
<element signature="e#1279#1280#0" expanded="true" />
<element signature="e#1329#1330#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/io/makerforce/undefined/model/Util.java">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.13392857">
<caret line="6" column="36" selection-start-line="6" selection-start-column="36" selection-end-line="6" selection-end-column="36" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/io/makerforce/undefined/view/coverlist.fxml">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.5263158">
<caret line="16" column="23" selection-start-line="16" selection-start-column="23" selection-end-line="16" selection-end-column="23" />
<folding />
</state>
</provider>
<provider editor-type-id="JavaFX-Scene-Builder">
<state />
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/io/makerforce/undefined/view/CoverListController.java">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.4329897">
<caret line="14" column="20" selection-start-line="14" selection-start-column="20" selection-end-line="14" selection-end-column="20" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/io/makerforce/undefined/view/InterfaceController.java">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0">
<caret line="128" column="33" selection-start-line="128" selection-start-column="33" selection-end-line="128" selection-end-column="33" />
<state vertical-scroll-proportion="0.7113402">
<caret line="99" column="34" selection-start-line="99" selection-start-column="34" selection-end-line="99" selection-end-column="34" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/io/makerforce/undefined/view/TrackListController.java">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0">
<caret line="44" column="0" selection-start-line="44" selection-start-column="0" selection-end-line="44" selection-end-column="0" />
<state vertical-scroll-proportion="0.71340203">
<caret line="43" column="12" selection-start-line="43" selection-start-column="12" selection-end-line="43" selection-end-column="12" />
<folding>
<element signature="imports" expanded="false" />
<element signature="e#1332#1333#0" expanded="true" />
<element signature="e#1370#1371#0" expanded="true" />
<element signature="e#1406#1407#0" expanded="true" />
<element signature="e#1440#1441#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/io/makerforce/undefined/view/interface.fxml">
<provider editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0">
<caret line="32" column="35" selection-start-line="32" selection-start-column="35" selection-end-line="32" selection-end-column="35" />
<entry file="file://$PROJECT_DIR$/src/io/makerforce/undefined/model/Item.java">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.24742268">
<caret line="8" column="0" selection-start-line="8" selection-start-column="0" selection-end-line="8" selection-end-column="0" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/io/makerforce/undefined/model/Library.java">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.06185567">
<caret line="2" column="37" selection-start-line="2" selection-start-column="37" selection-end-line="2" selection-end-column="37" />
<folding />
</state>
</provider>
<provider selected="true" editor-type-id="JavaFX-Scene-Builder">
<state />
</entry>
<entry file="file://$PROJECT_DIR$/src/io/makerforce/undefined/model/ItemList.java">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.10309278">
<caret line="10" column="27" selection-start-line="10" selection-start-column="27" selection-end-line="10" selection-end-column="27" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/io/makerforce/undefined/model/Artist.java">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.06185567">
<caret line="2" column="37" selection-start-line="2" selection-start-column="37" selection-end-line="2" selection-end-column="37" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/io/makerforce/undefined/model/Album.java">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.06185567">
<caret line="2" column="13" selection-start-line="2" selection-start-column="13" selection-end-line="2" selection-end-column="13" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/io/makerforce/undefined/model/Track.java">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.0">
<caret line="37" column="4" selection-start-line="37" selection-start-column="4" selection-end-line="37" selection-end-column="4" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/io/makerforce/undefined/util/TestClasses.java">
<provider selected="true" editor-type-id="text-editor">
<state vertical-scroll-proportion="0.8659794">
<caret line="30" column="0" selection-start-line="30" selection-start-column="0" selection-end-line="30" selection-end-column="0" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
</component>

View File

@ -1,4 +1,5 @@
package io.makerforce.undefined.model;
public class Playlist {
public class Album extends ItemList {
}

View File

@ -0,0 +1,6 @@
package io.makerforce.undefined.model;
public class Artist extends ItemList {
}

View File

@ -0,0 +1,13 @@
package io.makerforce.undefined.model;
import javafx.scene.image.Image;
public interface Item {
public Image getPicture();
public String getTitle();
public String getSubtitle();
}

View File

@ -0,0 +1,45 @@
package io.makerforce.undefined.model;
import javafx.collections.FXCollections;
import javafx.collections.ObservableList;
import javafx.scene.image.Image;
public class ItemList implements Item {
private Image picture;
private String title;
private String subtitle;
private ObservableList<Item> items = FXCollections.observableArrayList();
public ItemList(Image picture, String title, String subtitle) {
this.picture = picture;
this.title = title;
this.subtitle = subtitle;
}
public ItemList(Image picture, String title) {
this(picture, title, "");
}
public ItemList() {
this(null, "", "");
}
public Image getPicture() {
return picture;
}
public String getTitle() {
return title;
}
public String getSubtitle() {
return subtitle;
}
public ObservableList<Item> getItems() {
return items;
}
}

View File

@ -0,0 +1,5 @@
package io.makerforce.undefined.model;
public class Library extends ItemList {
}

View File

@ -1,5 +1,6 @@
package io.makerforce.undefined.model;
import javafx.scene.image.Image;
import org.json.JSONObject;
import java.net.MalformedURLException;
@ -8,10 +9,11 @@ import java.util.Spliterator;
import java.util.Spliterators;
import java.util.stream.StreamSupport;
public class Track {
public class Track implements Item {
private URL file;
private URL picture;
private Image picture;
private String title;
private String artist;
private String album;
private String year;
@ -20,8 +22,9 @@ public class Track {
private String[] genre;
public Track(JSONObject track) throws MalformedURLException {
title = track.getString("title");
file = new URL(track.getString("file"));
picture = new URL(track.getString("picture"));
picture = new Image(track.getString("picture"));
artist = track.getString("artist");
album = track.getString("album");
year = track.getString("year");
@ -30,5 +33,49 @@ public class Track {
genre = (String[]) StreamSupport.stream(Spliterators.spliteratorUnknownSize(track.getJSONArray("genre").iterator(), Spliterator.ORDERED), false).toArray();
}
public Track() {
}
public Image getPicture() {
return picture;
}
public String getTitle() {
return title;
}
public String getSubtitle() {
return artist;
}
public URL getFile() {
return file;
}
public String getArtist() {
return artist;
}
public String getAlbum() {
return album;
}
public String getYear() {
return year;
}
public int getTrackNumber() {
return trackNumber;
}
public int getTotalTracks() {
return totalTracks;
}
public String[] getGenre() {
return genre;
}
}

View File

@ -0,0 +1,32 @@
package io.makerforce.undefined.util;
import io.makerforce.undefined.model.Album;
import io.makerforce.undefined.model.Artist;
import io.makerforce.undefined.model.Library;
import io.makerforce.undefined.model.Track;
import java.net.MalformedURLException;
public class TestClasses {
public static void main(String[] args) throws MalformedURLException {
Library l = new Library();
Album a1 = new Album();
a1.getItems().addAll(new Track(), new Track());
Album a2 = new Album();
a2.getItems().addAll(new Track(), new Track());
Artist r1 = new Artist();
r1.getItems().addAll(a1, a2);
Album a3 = new Album();
a1.getItems().addAll(new Track(), new Track());
Album a4 = new Album();
a2.getItems().addAll(new Track(), new Track());
Artist r2 = new Artist();
r2.getItems().addAll(a3, a4);
l.getItems().addAll(r1, r2);
}
}

View File

@ -1,7 +1,5 @@
package io.makerforce.undefined.view;
import javafx.beans.property.SimpleStringProperty;
import javafx.beans.property.StringProperty;
import javafx.fxml.FXML;
import javafx.fxml.FXMLLoader;
import javafx.scene.Parent;
@ -25,13 +23,7 @@ public class CoverItemController extends AnchorPane {
@FXML
private ImageView imageView;
private StringProperty title = new SimpleStringProperty("");
private StringProperty subtitle = new SimpleStringProperty("");
private StringProperty secondary = new SimpleStringProperty("");
private StringProperty image = new SimpleStringProperty("");
public CoverItemController() {
public CoverItemController(Image picture, String title, String subtitle, String secondary) {
FXMLLoader fxmlLoader = new FXMLLoader(getClass().getResource("coveritem.fxml"));
fxmlLoader.setRoot(this);
fxmlLoader.setController(this);
@ -40,54 +32,23 @@ public class CoverItemController extends AnchorPane {
} catch (IOException exception) {
throw new RuntimeException(exception);
}
initializeBindings();
imageView.setImage(picture);
titleLabel.setText(title);
subtitleLabel.setText(subtitle);
secondaryLabel.setText(secondary);
subtitleContainer.setManaged(!subtitle.isEmpty());
}
public CoverItemController(String image, String title, String subtitle, String secondary) {
this();
this.image.set(image);
this.title.set(title);
this.subtitle.set(subtitle);
this.secondary.set(secondary);
public CoverItemController(Image picture, String title, String subtitle) {
this(picture, title, subtitle, "");
}
public CoverItemController(String image, String title, String subtitle) {
this(image, title, subtitle, "");
public CoverItemController(Image picture, String title) {
this(picture, title, "", "");
}
public CoverItemController(String image, String title) {
this(image, title, "", "");
}
public void initializeBindings() {
titleLabel.textProperty().bind(title);
subtitleLabel.textProperty().bind(subtitle);
secondaryLabel.textProperty().bind(secondary);
image.addListener((observable) -> {
String url = ((StringProperty) observable).getValue();
if (url.equals("")) {
imageView.setImage(null);
} else {
imageView.setImage(new Image(url));
}
});
subtitleContainer.managedProperty().bind(subtitle.isNotEqualTo(""));
}
public StringProperty titleProperty() {
return title;
}
public StringProperty subtitleProperty() {
return subtitle;
}
public StringProperty secondaryProperty() {
return subtitle;
}
public StringProperty imageProperty() {
return image;
public CoverItemController() {
this(null, "", "", "");
}
}

View File

@ -0,0 +1,28 @@
package io.makerforce.undefined.view;
import io.makerforce.undefined.model.ItemList;
import javafx.fxml.FXML;
import javafx.fxml.FXMLLoader;
import javafx.scene.layout.FlowPane;
import java.io.IOException;
public class CoverListController extends FlowPane {
@FXML
private FlowPane flowPane;
private ItemList itemList;
public CoverListController() {
FXMLLoader fxmlLoader = new FXMLLoader(getClass().getResource("tracklist.fxml"));
fxmlLoader.setRoot(this);
fxmlLoader.setController(this);
try {
fxmlLoader.load();
} catch (IOException exception) {
throw new RuntimeException(exception);
}
}
}

View File

@ -45,6 +45,8 @@ public class InterfaceController {
private FlowPane flowPane;
//@FXML
private TrackListController trackList;
//@FXML
private CoverListController coverList;
private Image playIcon = new Image("/icons/play3.48.png");
private Image pauseIcon = new Image("/icons/pause2.48.png");
@ -93,11 +95,12 @@ public class InterfaceController {
currentArtist.setText("Alan Walker");
currentTitle.setText("Fade");
trackList = new TrackListController("http://ambrose.makerforce.io:8080/art/Alan%20Walker/Spectre/1", "Spectre", "Alan Walker");
flowPane.getChildren().add(new CoverItemController("http://ambrose.makerforce.io:8080/art/Alan%20Walker/Spectre/1", "Spectre", "Alan Walker"));
flowPane.getChildren().add(new CoverItemController("http://ambrose.makerforce.io:8080/art/Alan%20Walker/Fade/1", "Fade", "Alan Walker"));
flowPane.getChildren().add(new CoverItemController("http://ambrose.makerforce.io:8080/art/Alan%20Walker/Fade/1", "Alan Walker"));
flowPane.getChildren().add(new CoverItemController("http://ambrose.makerforce.io:8080/art/Alan%20Walker/Fade/1", "Alan Walker"));
trackList = new TrackListController(new Image("http://ambrose.makerforce.io:8080/art/Alan%20Walker/Spectre/1"), "Spectre", "Alan Walker");
coverList = new CoverListController();
flowPane.getChildren().add(new CoverItemController(new Image("http://ambrose.makerforce.io:8080/art/Alan%20Walker/Spectre/1"), "Spectre", "Alan Walker"));
flowPane.getChildren().add(new CoverItemController(new Image("http://ambrose.makerforce.io:8080/art/Alan%20Walker/Fade/1"), "Fade", "Alan Walker"));
flowPane.getChildren().add(new CoverItemController(new Image("http://ambrose.makerforce.io:8080/art/Alan%20Walker/Fade/1"), "Alan Walker"));
flowPane.getChildren().add(new CoverItemController(new Image("http://ambrose.makerforce.io:8080/art/Alan%20Walker/Fade/1"), "Alan Walker"));
// UI Bindings

View File

@ -1,7 +1,5 @@
package io.makerforce.undefined.view;
import javafx.beans.property.SimpleStringProperty;
import javafx.beans.property.StringProperty;
import javafx.fxml.FXML;
import javafx.fxml.FXMLLoader;
import javafx.scene.Parent;
@ -26,12 +24,7 @@ public class TrackListController extends VBox {
@FXML
private ImageView imageView;
private StringProperty title = new SimpleStringProperty("");
private StringProperty subtitle = new SimpleStringProperty("");
private StringProperty image = new SimpleStringProperty("");
public TrackListController() {
public TrackListController(Image image, String title, String subtitle) {
FXMLLoader fxmlLoader = new FXMLLoader(getClass().getResource("tracklist.fxml"));
fxmlLoader.setRoot(this);
fxmlLoader.setController(this);
@ -40,44 +33,18 @@ public class TrackListController extends VBox {
} catch (IOException exception) {
throw new RuntimeException(exception);
}
initializeBindings();
imageView.setImage(image);
titleLabel.setText(title);
subtitleLabel.setText(subtitle);
coverContainer.setManaged(!(subtitle.isEmpty() && title.isEmpty()));
}
public TrackListController(String image, String title, String subtitle) {
this();
this.image.set(image);
this.title.set(title);
this.subtitle.set(subtitle);
}
public TrackListController(String image, String title) {
public TrackListController(Image image, String title) {
this(image, title, "");
}
public void initializeBindings() {
titleLabel.textProperty().bind(title);
subtitleLabel.textProperty().bind(subtitle);
image.addListener((observable) -> {
String url = ((StringProperty) observable).getValue();
if (url.equals("")) {
imageView.setImage(null);
} else {
imageView.setImage(new Image(url));
}
});
coverContainer.managedProperty().bind(title.isNotEqualTo("").and(subtitle.isNotEqualTo("")));
}
public StringProperty titleProperty() {
return title;
}
public StringProperty subtitleProperty() {
return subtitle;
}
public StringProperty imageProperty() {
return image;
public TrackListController() {
this(null, "", "");
}
}

View File

@ -0,0 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<?import javafx.geometry.Insets?>
<?import javafx.scene.layout.FlowPane?>
<fx:root xmlns:fx="http://javafx.com/fxml/1" type="javafx.scene.layout.FlowPane" xmlns="http://javafx.com/javafx/8.0.40"
fx:id="flowPane" alignment="TOP_CENTER" columnHalignment="CENTER" hgap="7.0"
vgap="7.0">
<children>
</children>
<padding>
<Insets bottom="14.0" left="14.0" right="14.0" top="14.0"/>
</padding>
</fx:root>