@ -32,12 +32,13 @@ import java.io.InputStreamReader;
import java.io.Writer ;
import java.math.BigInteger ;
import java.net.URLConnection ;
import java.util.ArrayList ;
import java.util.Locale ;
import java.util.ResourceBundle ;
import java.util.concurrent.ExecutorService ;
import java.util.concurrent.Executors ;
import javax.swing.SwingUtilities ;
import org.apache.logging.log4j.LogManager ;
import org.apache.logging.log4j.Logger ;
import org.kellerkinder.Alerts.JFXInfoAlert ;
@ -93,9 +94,9 @@ import kellerkinder.HomeFlix.controller.DBController;
import kellerkinder.HomeFlix.controller.OMDbAPIController ;
import kellerkinder.HomeFlix.controller.UpdateController ;
import kellerkinder.HomeFlix.controller.XMLController ;
import kellerkinder.HomeFlix.datatypes.FilmTabelDataType ;
import kellerkinder.HomeFlix.datatypes.SourceDataType ;
import kellerkinder.HomeFlix.player.Player ;
import kellerkinder.HomeFlix.datatypes.FilmTabelDataType ;
public class MainWindowController {
@ -163,14 +164,13 @@ public class MainWindowController {
// poster-mode
// @FXML private AnchorPane posterModeAnchorPane;
private static DBController dbController ; // the player needs the initialized dbController
private DBController dbController ;
private UpdateController updateController ;
private XMLController xmlController ;
private Stage primaryStage ;
private static final Logger LOGGER = LogManager . getLogger ( MainWindowController . class . getName ( ) ) ;
private boolean menuTrue = false ;
private boolean settingsTrue = false ;
private final String version = "0.7.0" ;
private final String buildNumber = "169" ;
@ -290,9 +290,8 @@ public class MainWindowController {
burgerTask . play ( ) ;
menuTrue = true ;
}
if ( settings True ) {
if ( settings ScrollPane. isVisible ( ) ) {
settingsScrollPane . setVisible ( false ) ;
settingsTrue = false ;
}
} ) ;
@ -512,10 +511,11 @@ public class MainWindowController {
@FXML
private void openfolderbtnclicked ( ) {
String dest = new File ( getCurrentStreamUrl ( ) ) . getParentFile ( ) . getAbsolutePath ( ) ;
File dest = new File ( getCurrentStreamUrl ( ) ) . getParentFile ( ) ;
if ( ! System . getProperty ( "os.name" ) . contains ( "Linux" ) ) {
try {
Desktop . getDesktop ( ) . open ( new File ( dest ) ) ;
Desktop . getDesktop ( ) . open ( dest ) ;
} catch ( IOException e ) {
e . printStackTrace ( ) ;
}
@ -543,12 +543,10 @@ public class MainWindowController {
@FXML
private void settingsBtnclicked ( ) {
if ( settings True ) {
if ( settings ScrollPane. isVisible ( ) ) {
settingsScrollPane . setVisible ( false ) ;
settingsTrue = false ;
} else {
settingsScrollPane . setVisible ( true ) ;
settingsTrue = true ;
}
}
@ -613,8 +611,8 @@ public class MainWindowController {
* clear the FilmsList and FilmRoot children , then update the database
* /
private void refreshAllFilms ( ) {
getFilmsList( ) . clear ( ) ;
getFilmRoot( ) . getChildren ( ) . clear ( ) ;
filmsList . clear ( ) ;
filmRoot . getChildren ( ) . clear ( ) ;
dbController . refreshDataBase ( ) ; // refreshes the database after a source path was added
filmsList = dbController . getDatabaseFilmsList ( ) ; // returns a list of all films stored in the database
addFilmsToTable ( filmsList ) ;
@ -690,7 +688,7 @@ public class MainWindowController {
// clear old sources list/table
getSourcesList ( ) . clear ( ) ;
getSourceRoot( ) . getChildren ( ) . clear ( ) ;
sourceRoot . getChildren ( ) . clear ( ) ;
// clear the FilmsList and FilmRoot children, then update the database
refreshAllFilms ( ) ;
@ -809,27 +807,27 @@ public class MainWindowController {
ObservableList < Node > textFlow = getTextFlow ( ) . getChildren ( ) ;
// TODO this should move! ***
ArrayList< Text > nameText = new ArrayList < Text > ( ) ;
nameText .add ( new Text ( XMLController . getLocalBundle ( ) . getString ( "title" ) + ": " ) ) ;
nameText .add ( new Text ( XMLController . getLocalBundle ( ) . getString ( "year" ) + ": " ) ) ;
nameText .add ( new Text ( XMLController . getLocalBundle ( ) . getString ( "rated" ) + ": " ) ) ;
nameText .add ( new Text ( XMLController . getLocalBundle ( ) . getString ( "released" ) + ": " ) ) ;
nameText .add ( new Text ( XMLController . getLocalBundle ( ) . getString ( "season" ) + ": " ) ) ;
nameText .add ( new Text ( XMLController . getLocalBundle ( ) . getString ( "episode" ) + ": " ) ) ;
nameText .add ( new Text ( XMLController . getLocalBundle ( ) . getString ( "runtime" ) + ": " ) ) ;
nameText .add ( new Text ( XMLController . getLocalBundle ( ) . getString ( "genre" ) + ": " ) ) ;
nameText .add ( new Text ( XMLController . getLocalBundle ( ) . getString ( "director" ) + ": " ) ) ;
nameText .add ( new Text ( XMLController . getLocalBundle ( ) . getString ( "writer" ) + ": " ) ) ;
nameText .add ( new Text ( XMLController . getLocalBundle ( ) . getString ( "actors" ) + ": " ) ) ;
nameText .add ( new Text ( XMLController . getLocalBundle ( ) . getString ( "plot" ) + ": " ) ) ;
nameText .add ( new Text ( XMLController . getLocalBundle ( ) . getString ( "language" ) + ": " ) ) ;
nameText .add ( new Text ( XMLController . getLocalBundle ( ) . getString ( "country" ) + ": " ) ) ;
nameText .add ( new Text ( XMLController . getLocalBundle ( ) . getString ( "awards" ) + ": " ) ) ;
nameText .add ( new Text ( XMLController . getLocalBundle ( ) . getString ( "metascore" ) + ": " ) ) ;
nameText .add ( new Text ( XMLController . getLocalBundle ( ) . getString ( "imdbRating" ) + ": " ) ) ;
nameText .add ( new Text ( XMLController . getLocalBundle ( ) . getString ( "type" ) + ": " ) ) ;
nameText .add ( new Text ( XMLController . getLocalBundle ( ) . getString ( "boxOffice" ) + ": " ) ) ;
nameText .add ( new Text ( XMLController . getLocalBundle ( ) . getString ( "website" ) + ": " ) ) ;
Text[ ] nameText = new Text [ 20 ] ;
nameText [0 ] = new Text ( XMLController . getLocalBundle ( ) . getString ( "title" ) + ": " ) ;
nameText [1 ] = new Text ( XMLController . getLocalBundle ( ) . getString ( "year" ) + ": " ) ;
nameText [2 ] = new Text ( XMLController . getLocalBundle ( ) . getString ( "rated" ) + ": " ) ;
nameText [3 ] = new Text ( XMLController . getLocalBundle ( ) . getString ( "released" ) + ": " ) ;
nameText [4 ] = new Text ( XMLController . getLocalBundle ( ) . getString ( "season" ) + ": " ) ;
nameText [5 ] = new Text ( XMLController . getLocalBundle ( ) . getString ( "episode" ) + ": " ) ;
nameText [6 ] = new Text ( XMLController . getLocalBundle ( ) . getString ( "runtime" ) + ": " ) ;
nameText [7 ] = new Text ( XMLController . getLocalBundle ( ) . getString ( "genre" ) + ": " ) ;
nameText [8 ] = new Text ( XMLController . getLocalBundle ( ) . getString ( "director" ) + ": " ) ;
nameText [9 ] = new Text ( XMLController . getLocalBundle ( ) . getString ( "writer" ) + ": " ) ;
nameText [10 ] = new Text ( XMLController . getLocalBundle ( ) . getString ( "actors" ) + ": " ) ;
nameText [11 ] = new Text ( XMLController . getLocalBundle ( ) . getString ( "plot" ) + ": " ) ;
nameText [12 ] = new Text ( XMLController . getLocalBundle ( ) . getString ( "language" ) + ": " ) ;
nameText [13 ] = new Text ( XMLController . getLocalBundle ( ) . getString ( "country" ) + ": " ) ;
nameText [14 ] = new Text ( XMLController . getLocalBundle ( ) . getString ( "awards" ) + ": " ) ;
nameText [15 ] = new Text ( XMLController . getLocalBundle ( ) . getString ( "metascore" ) + ": " ) ;
nameText [16 ] = new Text ( XMLController . getLocalBundle ( ) . getString ( "imdbRating" ) + ": " ) ;
nameText [17 ] = new Text ( XMLController . getLocalBundle ( ) . getString ( "type" ) + ": " ) ;
nameText [18 ] = new Text ( XMLController . getLocalBundle ( ) . getString ( "boxOffice" ) + ": " ) ;
nameText [19 ] = new Text ( XMLController . getLocalBundle ( ) . getString ( "website" ) + ": " ) ;
// ***
// set the correct font for the nameText
@ -845,7 +843,7 @@ public class MainWindowController {
if ( cacheData [ i ] ! = null & & ( i = = 5 | | i = = 6 ) & & cacheData [ 5 ] . length ( ) = = 0 ) {
// do nothing
} else if ( cacheData [ i ] ! = null ) {
textFlow . addAll ( nameText .get ( i ) , new Text ( cacheData [ i ] + "\n" ) ) ;
textFlow . addAll ( nameText [i ] , new Text ( cacheData [ i ] + "\n" ) ) ;
}
}
@ -853,9 +851,9 @@ public class MainWindowController {
// add the image
try {
getPosterImageView( ) . setImage ( new Image ( new File ( cacheData [ 20 ] ) . toURI ( ) . toString ( ) ) ) ;
posterImageView . setImage ( new Image ( new File ( cacheData [ 20 ] ) . toURI ( ) . toString ( ) ) ) ;
} catch ( Exception e ) {
getPosterImageView( ) . setImage ( new Image ( "icons/close_black_2048x2048.png" ) ) ;
posterImageView . setImage ( new Image ( "icons/close_black_2048x2048.png" ) ) ;
LOGGER . error ( "No Poster found, useing default." ) ;
}
}
@ -914,9 +912,6 @@ public class MainWindowController {
}
// getter and setter
public static DBController getDbController ( ) {
return dbController ;
}
public FilmTabelDataType getCurrentTableFilm ( ) {
return currentTableFilm ;
@ -938,35 +933,15 @@ public class MainWindowController {
return indexList ;
}
public ObservableList < FilmTabelDataType > getFilmsList ( ) {
return filmsList ;
}
public static ObservableList < SourceDataType > getSourcesList ( ) {
return sourcesList ;
}
public TreeTableView < FilmTabelDataType > getFilmsTreeTable ( ) {
return filmsTreeTable ;
}
public TextFlow getTextFlow ( ) {
return textFlow ;
}
public ImageView getPosterImageView ( ) {
return posterImageView ;
}
public JFXButton getUpdateBtn ( ) {
return updateBtn ;
}
public TreeItem < FilmTabelDataType > getFilmRoot ( ) {
return filmRoot ;
}
public TreeItem < SourceDataType > getSourceRoot ( ) {
return sourceRoot ;
}
}