JavaFX 2.0 :: Custom ComboBox Implementation Not Recognized By Scene Builder 2.0

Jun 3, 2015

I did an implementation which is an extension of javafx.scene.control.ComboBox

Inside I imported the Class ComboBoxListViewSkin

import com.sun.javafx.scene.control.skin.ComboBoxListViewSkin;
 
I think this might be the reason as this comboBox is not recognized at the import to the scene builder library. I can show up the import dialog of custom controls, but my custom ComboBox is not showing up. All other implementations are there correctly as they are loaded from my customControl.jar file
 
I use the ComboBoxListViewSkin for the functionality to scroll to an item in the combo as a user types a letter on the keyboard.

I do this by:

/**
     * This method scrolls the itemView of the items to the first item starting
     * with the given char or string
     *
     * @param pressedKey
     */
    public void scrollToChar(String pressedKey) {
        String value = pressedKey.toUpperCase(); 
        for (Object userEntry : getItems()) {

[Code] ....
 
I really need to show up my custom Combo in the scenebuilder, as otherwise the rest of my fxml is not editable in sceneBuilder 2.0 ....

View Replies


ADVERTISEMENT

Integrating MySQL Into JavaFX Scene Builder

Jul 4, 2014

I am new to javafx and my goal is to basically just test if my java code works with Mysql. What I'm planning to do is to display one data of the sakila database into a Label named greetingLabel. And I can't seem to find where i went wrong so i'll show you my whole code.

Here is the main code for my controller class from scene builder:

package main;
import java.net.URL;
import java.util.ResourceBundle;
import javafx.event.ActionEvent;
import javafx.fxml.FXML;
import javafx.fxml.Initializable;
import javafx.scene.control.Label;

[Code] .....

Here is the error displayed when pressing the button

Exception in thread "JavaFX Application Thread" java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
at javafx.fxml.FXMLLoader$MethodHandler.invoke(Unknown Source)
at javafx.fxml.FXMLLoader$ControllerMethodEventHandler.handle(Unknown Source)
at com.sun.javafx.event.CompositeEventHandler.dispatchBubblingEvent(Unknown Source)

[Code] .....

View Replies View Related

JavaFX 2.0 :: Scene Builder On High DPI Screen

Jun 6, 2015

I'm trying to follow the Scene Builder tutorials on a 3200 X 1800 screen which makes the size of the content pane 3'' x 2" ....

View Replies View Related

JavaFX 2.0 :: Why Does Scene Builder Constantly Create New Instances Of Nodes

Nov 28, 2014

I thought I had a simple idea for creating a control that would let me get some of the behavior of a card pane.  This is the entire control:
 
import javafx.beans.property.BooleanProperty;
import javafx.beans.property.SimpleBooleanProperty;
import javafx.beans.value.ChangeListener;
import javafx.beans.value.ObservableValue;
import javafx.scene.Node;

[Code] ....
 
The idea is pretty simple; extend StackPane, add an active property, bind the visible and managed properties of the pane to the active property, and, whenever the active property is changed to true, iterate sibling nodes de-activating any siblings that are also of the type Card.
 
However, this doesn't work with Scene Builder.  While trying to debug, I created an ExtStackPane:
 
import javafx.collections.ListChangeListener;
import javafx.scene.Node;
import javafx.scene.layout.StackPane;
public class ExtStackPane extends StackPane {
    {
        getChildren().addListener((ListChangeListener<Node>) c -> {
            System.out.println("ExtStackPane children change: " + c.toString());
        });
    }
}
 
All this does is log list change events.  However, I was very surprised by the output when working in Scene Builder.  I added both controls to Scene Builder and did the following:
 
0) Added an ExtStackPane
1) Added a Card to the ExtStackPane
2) Added another Card to the ExtStackPane
3) Added a Label to the first Card
4) Added a Label to the second Card
5) Changed the text of the first Label to Hello
6) Changed the text of the second Label to World
7) Set the first Card to active
8) Set the second Card to active
 
I get the following output:
 
1)
ExtStackPane children change: { [Card@5b9067b3] added at 0 }

2)
ExtStackPane children change: { [Card@6b6328bd] added at 0 }
ExtStackPane children change: { [Card@6aca8cc5] added at 1 }

[Code] ....
 
This is what things look like in Scene Builder:
 
Does Scene Builder recreate the entire hierarchy every time I make a small change?  Here's an application that does the same as the manual steps I performed in Scene Builder:

import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Label;
import javafx.stage.Stage;
public class CardApplication extends Application {

[Code] ....

The output when running the above is:

1)
ExtStackPane children change: { [Card@6dfaa767] added at 0 }

2)
ExtStackPane children change: { [Card@6aa2c411] added at 1 }

[Code] ....
 
The behavior is obviously a lot different than when I'm working with the control in Scene Builder. What Scene Builder is doing to change the behavior of my Card control so much?  Does my Card control break some rule(s) I'm not aware of?

View Replies View Related

JavaFX 2.0 :: ImageView Image Created In Scene Builder 2.0 Doesn't Display In Running App

Sep 9, 2014

I'm using Scene Builder 2.0 and have added an ImageView to the parent AnchorPane.  I've added my PNG files for the app icon and the various buttons. I select the ImageView in Scene Builder and then crawl the filesystem to the project package folder and select the PNG for the Image.  The assigned image is displayed in the Imageview in Scene Builder in both design mode and Preview mode.
 
While everything else shows up properly when the app is executed, the image assigned to the ImageView does not display.
 
From the FXML file:

<ImageView fx:id="ivBRULogo" fitHeight="64.0" fitWidth="64.0" layoutX="14.0" layoutY="14.0" pickOnBounds="true" preserveRatio="true" AnchorPane.leftAnchor="14.0" AnchorPane.topAnchor="14.0">
         <image>
            <Image url="@BRU_PE_B_64.png" />
         </image>
      </ImageView>
 
What might be occurring between the compiled app and what Scene Builder generates?

View Replies View Related

JavaFX 2.0 :: Scene Implementation With ScrollPane - Dynamic Node Scaling

Apr 23, 2015

I'm trying to implement a scene with a ScrollPane in which the user can drag a node around and scale it dynamically. I have the dragging and scaling with the mouse wheel working as well as a reset zoom.
 
Here's my issue:

     I'm having trouble with the calculations to fit the node to the width of the parent.
     If I zoom in or out, the fit to width does not work.
     If I change the window size after running fitWidth() once, the fit to width does not work the second time.
 
Here is my code as an SSCCE and how it works...

1. (works) Mouse wheel will zoom in and out around the mouse pointer
2. (works) Left or right mouse press to drag the rectangle around
3. (works) Left double-click to reset the zoom
4. (doesn't work) Right double-click to fit the width
 
My calculations to re-position the rectangle to the upper left of the pane and fit it (i.e. scale it up or down) to the width of the parent are incorrect.
 
import javafx.animation.KeyFrame;
import javafx.animation.KeyValue;
import javafx.animation.Timeline;
import javafx.application.Application;
import javafx.beans.property.DoubleProperty;

[Code] ....

View Replies View Related

JavaFX 2.0 :: How To Add Screen Builder To Eclipse 4.2.2

May 29, 2015

I want to include JavaFX in my Eclipse IDE.  I found intructions on how to import JavaFX Screen Builder into Eclipse 4.4 but my version is 4.2.2
 
I noticed that JavaFX is included into Java JDK now, I have installed Java JDK 8_45
 
The info on the oracle java pages is telling me i have to install JavaFX Screen Builder 2 before installing the plugin.
 
So, how to i proceed ???
 
I tried to inport e(fx)clipse plugin 1.2 and 0.9 but both refuses to install.  Messages received as follows:
 
Cannot complete the install because one or more required items could not be found.

  Software being installed: e(fx)clipse - IDE - FXML 1.2.0.201501301049 (org.eclipse.fx.ide.fxml.feature.feature.group 1.2.0.201501301049)
  Missing requirement: JavaFX Preview 1.2.0.201501301049 (org.eclipse.fx.ide.ui.preview 1.2.0.201501301049) requires 'bundle com.google.inject 2.0.0' but it could not be found
  Cannot satisfy dependency:
    From: e(fx)clipse - IDE - FXML 1.2.0.201501301049 (org.eclipse.fx.ide.fxml.feature.feature.group 1.2.0.201501301049)
    To: org.eclipse.fx.ide.ui.preview [1.2.0.201501301049]

View Replies View Related

JavaFX 2.0 :: Scene Not Laying Out Properly

Mar 12, 2015

Have have just started working with JavaFX and SceneBuilder having been a long time Swing developer.
 
My first foray into the world of JavaFX involves building a rather simple desktop application to parse text based log files with regular expressions.
 
Currently I am working on the main window for this application.  I built a scene in SceneBuilder using a BorderPane for my root.
 
I placed a TitledPane which contains a TableView in the center section of the BorderPane and a VBox which contains several Buttons in the right section of the BorderPane.  When I view the layout in SceneBuilder using the Preview menu item to show the preview in a Window, SceneBuilder shows the scene laid out exactly as it is in the work are and as I would like it laid out.
 
When I close SceneBuilder and go back to my IDE (Eclipse) and build and run the application the scene is displayed in a window differently than in SceneBuilder preview.  When the application executes the scene is laid out as if there has been something placed in the top section of the BorderPane, the TitledPane containing the TableView is centered in the window and the VBox containing the buttons are not aligned with the top of the TitledPane containing the TableView because it is as if there is a "null control" in the top section of the BorderPane.
 
Why is there a difference in the way SceneBuilder displays the scene and the way the executed application displays the scene?
 
Also, I recently made some changes to the layout of the controls in SceneBuilder (e.g. changed some padding and location of some controls in their containers and again the scene looks perfect in SceneBuilder but when I execute the application now some components in the container where I made the changes are truncated when the scene is displayed when the application executes.
 
It is almost as if SceneBuilder is interpreting the FXML one way and the JavaFX API during run time is interpreting the FXML another way.

View Replies View Related

JavaFX 2.0 :: How To Save A Scene As Image

Apr 9, 2015

I am new in JavaFX, I download/installed JDK8 with NB. I am trying to save a scene as image (png or jpg), but the result png is blank.

Here is the Java simple code:
----------------------------------------------------------------------------
import java.io.File;
import static javafx.application.Application.launch;
import javafx.embed.swing.SwingFXUtils;
import javafx.print.PrinterJob;
import javafx.scene.Scene;
import javafx.scene.SnapshotParameters;
import javafx.scene.image.WritableImage;

[Code] ....

View Replies View Related

JavaFX 2.0 :: Set Busy Cursor For A Scene

May 15, 2014

My problem is simple. Just set busy cursor on a scene. The scenarios is like this: I have simple application with a button on it. When I click the button, I will:

1. Set mouse cursor to BUSY
2. Do some work
3. Set mouse cursor back to DEFAULT.
 
I search the web and found some sample codes to set cursor. But they don't satisfy my need. So I wrote a simple application:
 
public class MainFormApp extends Application {
  @Override
  public void start(Stage stage) throws Exception {
       stage.initStyle(StageStyle.DECORATED);
        Pane root = new Pane();
        root.setPrefSize(500, 300);
        Button btn = new Button("Click me");       

[Code] ....
 
When I run application and click the button, cursor does not change to BUSY. I also tried to use Platform.runLater() but no luck.

View Replies View Related

JavaFX 2.0 :: Access Scene Graph Data From EDT

May 11, 2014

I have following methods, which I call from the Event Dispatcher Thread:
 
public void setTitle(String title) {       
Platform.runLater(() -> stage.setTitle(title));}   
public String getTitle() {       
return stage.getTitle(); // <- Access from outside JFX App Thread ok?} 

Is it thread-safe, when the getter-Method just return the value like the example show? Or must I create a Runnable, so stage.getTitle() is called inside the Java Application Thread? How I return the value then?

View Replies View Related

JavaFX 2.0 :: Resize Animation For Stage / Scene?

Sep 18, 2014

I am looking for a way to find a resize animation for an application I'm developing.  I found this answer but I figure there could be a better method out there,
 
Java - How do I create a Resize animation for JavaFX stage? - Stack Overflow

I am just looking to select something in a list, then press a button which would enable the animation and enlarge the stage.  This will happen twice.

View Replies View Related

JavaFX :: Slot Machine In Netbeans - Scene / Stage

Oct 21, 2014

I want to create a slot machine in NetBeans, with JavaFX library (without using JavaFX Scene Builder) but i have some problems to create UI.

I created algorithm already but without visuals.

Now my code is:
 
public class BEST extends Application {
private ImageView var; //init imageview of images
public static void main(String[] args) {
launch(args);
 
[Code] ....

createbottom(); and creategr(); i wrote already (and my program creates grid pane of random images with double dimension array, random and imageview) and program runs, but i don t know how to keep track of credits balance,in the same time to create new random gridpane of images and to get rid of every gridpane.

Here is creategr();
 
private GridPane creategr(){
final GridPane creategr = new GridPane();
int[][] newarray=new int[3][3];
int w=100;
for(int i=0; i<3; i++){
for(int j=0; j<3;j++)

[Code] ....

Button "SPIN" is created in createbottom();.

View Replies View Related

JavaFX 2.0 :: Multiple Scene And Passing Variables With FXML Files

Mar 21, 2015

Lets say I have a desire to convert and entered value to Centigrade or Fahrenheit and that I have two Radio Buttons to designate the type of conversion with the Answer posted to a TextField on Scene Two from a button click event on Scene One ok Now I would like to convert the value in the TextField on Scene Two to Kelvin and reflect the value on Scene Three in a TextField by clicking a button on Scene Two
 
lets say  I have 4 FXML files sceneONE sceneTWO and scenMain and I created 4 controllers ControllerONE and MasterController

So far I can navigate to the different scens with just the MasterController code below...

BUT because I have two FXML files I can not capture the value in the first FXML file and pass it to the second scene
 
This project is my attempt to adapt the FXML style code from this web site

Switching to Different Screens in JavaFX and FXML | JavaFXTutorials

Which uses this code to switch scenes

    //get reference to the button's stage                stage=(Stage) btnS1.getScene().getWindow();
       //load up OTHER FXML document
       root = FXMLLoader.load(getClass().getResource("ATTwo.fxml"));

But will not permit variable transfer due to scope of variables which reside in two different FXML files
 
public class MasterController implements Initializable{@FXML public Button btnS1;
@FXML public Button btnS2;
@FXML public Label lblS1;
@FXML public Label lblS2;
@FXML public TextField txfS1;
@FXML public TextField txfS2;
@FXML public AnchorPane root;

[Code] .....

View Replies View Related

JavaFX 2.0 :: Correct Way To Make Stage Respect Its Scene Minimum Size?

Jun 25, 2014

I noticed that all my stages can be resized to zero size regardless of their contained scene, which is very ugly. How do I keep them from doing that? Is there some sort of intelligent way to bind the stage's min size to the size of the scene so that no part of the scene is cut off?

View Replies View Related

JavaFX 2.0 :: Set Default Skin With ComboBox

Aug 4, 2014

I would like to change the default skin of JavaFXapplication during runtime. How I can do this using ComboBox? Now I use this code to change the value:
 
setUserAgentStylesheet(STYLESHEET_MODENA);
 
Is there a way to change the skin in a run time?
 
Ref Set default skin in JavaFX with ComboBox - Stack Overflow

View Replies View Related

JavaFX 2.0 :: Combobox Inside A Tablecell

Mar 24, 2015

I have a combo box inside a table cell for each row. I have defined a value change listener for each combobox. Whenever the combo box value is changed, the selected item is placed inside a MAPVOBean. The problem i am facing is when the user scrolls Up and down the tableview , the change listener is fired even without clicking on it the explicitly, and this changes the my value in my data structure. How to handle this. The source code is attached.

My Model:

Person class

Has first name, last name and MAPVOBean.

Address is stored in a MAPVOBean. It has a map and key is house number and the value is the state where the house is. It is assumed that the person can have one house in each state.

Columns in table view:

Column 1: First Name
Column 2: Last name
Column 3: State combo box. This shows the state in which the person owns a house. 

/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package taleviewtester;
import java.io.IOException;
import javafx.application.Application;
import javafx.fxml.FXMLLoader;

[Code] .....

View Replies View Related

JavaFX 2.0 :: Combobox In Subscene Is Not Working

May 9, 2014

In the below example i'm trying to add a combo box inside a subscene. But it is not working correctly .If I select a value from the combo box ,it's is not set in the combobox and the combobox values are not displaying properly.
 
package javaFxExamples;                   
import javafx.application.Application;
import javafx.beans.binding.When;  
import javafx.beans.property.BooleanProperty;
import javafx.beans.property.DoubleProperty;   

[Code] .....

View Replies View Related

JavaFX 2.0 :: ComboBox Caret Position

Feb 23, 2015

I am developing a form with ComboBox as a subject (the user can choose one from the list , or type one) and TextArea where the user can write his notes (attached a picture). The user using a virtual keyboard (touch) to enter any characters.
 
I am using the append method to append the next Char to the TextInputControl class (both Combo and TextArea Inherit from it). When I try to deletePreviousChar() in the TextArea it works, but in ComboBox it fails

I put some System.out.println() to see what is the problem and it seems that with the ComboBox the class is loosing the Caret position after every action
 
Here is my code: (Look it also as a attached picture)

public void changed(ObservableValue<? extends String> observable,
  String oldVal, String newVal) {
  if (newVal != null) {
  if (lastNodeInFocus instanceof TextArea) {
  switch (newVal) {

[Code] ....
 
Here is the Debug results:  CB = Combo  TA = TextArea  B=Before  A=After , the numbers are the caret position (also attached as a picture )

CB - append B 0
CB - append A :1
CB - append B 0
CB - append A :2
CB - append B 0

[Code] ....
 
combo caret code.png
33.5 K

combo caret debug results .png
9.9 K

my form.png
28.4 K

View Replies View Related

JavaFX 2.0 :: Sizing Width Of ComboBox Based On Items

Apr 16, 2015

I have a ComboBox -- just a simple ComboBox with string items.
 
My string items aren't very long (5 letters max), but the ComboBox shows quite wide relative to my strings. So I would like to size my ComboBox to the size of my strings.
 
I messed around with setting the CellFactory of the ComboBox, and have the Cells produced by the CellFactory set the preferred width of the cells to some constant like 100. That worked in terms of changing the size of the ComboBox to the preferred width of 100.
 
But what I really want to do is to compute the preferred width from the string items. For that I need to be able to compute how wide a string item will be when rendered. And I guess that depends on the font size used by the ComboBox to render strings, which probably depends on the platform (OS X different to Windows?).

View Replies View Related

JavaFX 2.0 :: How To Properly Customize Text Label Of ComboBox

Jun 8, 2014

Switching from Swing to JFX 8, I am trying to find out how to do something I would normally do in a super-simple ListCellRenderer, i.e. customize the String displayed for an item. I tried this:

ComboBox<Integer> combo = new ComboBox<>();
    combo.getItems().addAll(1, 2, 3);
    combo.setCellFactory(new Callback<ListView<Integer>, ListCell<Integer>>() {
        @Override
        public ListCell<Integer> call(ListView<Integer> param) {
  
[Code] .....
 
However, when I do this, the customized String is not used for the selected Item (rather the standard toString() value of the item). Apart from that it is no longer selectable using the mouse (I submitted a bug report for this at [URL] .... but that is not really the point of my question.

Anything else I have to do to make sure the selected item is also rendered using the custom cell or is there a different mechanism for this?

View Replies View Related

JavaFX 2.0 :: Combobox - Visible Count Row Not Applied And Doesn't Change

Oct 15, 2014

I have noticed a strange behavior of Combobox element. The number of visible rows is not the same established by setVisibleRowCount() method. It happens when changing the items list dynamically. The following example reproduces it. I think it is Javafx 8 bug. I have tried unsuccessfully to trigger some event indirectly to refresh the combobox drop down.

import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.ComboBox;
import javafx.scene.layout.HBox;
import javafx.stage.Stage;
public class TestComboBox extends Application {
    private int count;

[Code] .....

View Replies View Related

JavaFX :: Implementation Of Web Data Into Non-web Java Application

Aug 4, 2014

What would be the most effective method to display data grabbed from a web source that is queried every second, for example the most recent EUR/USD price?

I already have access to the data stream, and I've built a simple FXML in javaFX that contains a grid; I'm not sure how to approach putting the live ticking data into the grid so it continues to update as the price changes, for example.

View Replies View Related

JavaFX 2.0 :: TreeItem And Custom Rendering

May 31, 2014

I am fairly new to FX but well experienced with Swing. Since I am familiar with the Swing concept of rendering a let's say JTree I got problems with the FX model of - in this case - TreeView.
 
I read several documentations about FX. From the API doc of TreeItem I adapted the file browser example to create an own class like this :
 
public class PathTreeItem extends TreeItem<PathTreeItem> implements
        Comparable<PathTreeItem> {
    private boolean firstVisit = true;
    private boolean readable;
    private boolean dir;
    private boolean symlink;

[Code] ...
 
But this did not change anything. I try to override toString() in both classes but even this did not change anything.
 
What I wonder so far:
 
Why is item in PathNodeTreeCell always null?What is the difference between the item I get in the updateItem method and the one I get from getItem() (line 10)How can I connect the PathTreeItem class to the PathNodeTreeCell classShould I always call super() in the constructors? (I delved a little bit in the sources of TreeItem and TreeCell and I found some setup code there )Is it ok to extend TreeItem in the way I does for my custom PathTreeItem class? ( I wonder if this is a cyclic dependency when I extends TreeItem in this way )How can I sort the nodes? I added the Comparable interface but this not change the sorting of the nodesAre ther some tutorials of TreeItem/TreeCell with no trivial objects like String ? 

I want to adapt an well running Swing application to FX. In the Swing app I used a mechanism to load the child path's of a directory in a separate thread to avoid freezing if the UI if there are much child elements. I guess in FX I should use the Properties pattern to achieve this should I?

View Replies View Related

JavaFX 2.0 :: Dynamically Change CSS Class And Splash Screen Implementation

Jan 12, 2015

So it seems to reason that many JavaFX applications will want to dynamically change CSS styles.  Is the best way to do this via the <node>.getStyleClass().add("classname")?  The underlying data structure is an observable list.  So lets say one has 5 styles that simply change the fill color of a circle to 5 different colors respectively.  So if I have a condition in which I want to dynamically apply 1 of these 5 styles, the way I currently do this is by defining all 5 styles as strings in a list using a static initializer, then I call <node>.getStyleClass().removeAll(list), then getStyleClass().add("classname").  I do this to avoid adding the same style over and over and inflating the underlying list.  Is this the correct way to manage dynamic CSS styles?
 
So I know there is a few different way to implement a splash screen.  My app has definitely gotten larger over the last few months of development and I have noticed there is about a 5 second delay between when I run the application to when I see the main stage.  I was thinking a splash screen would be nice to fill this time period.  I have not had time to prototype using a Preloader and I fear that using an alternate, lightweight stage on startup would still take too long of a delay.  I was actually thinking that using the nice and simple JVM argument "-splash:<image name>" would be simple, easy and effective.  Unfortunately when I try to do this, the splash screen comes up but never goes away. 

View Replies View Related

JavaFX 2.0 :: Custom Icons Into Bundle DMG Package

Jul 21, 2014

I created an ant script to create an installer for my JavaFx app:
 
<?xml version="1.0" encoding="UTF-8"?>
<project name="app-javafx" default="do-deploy" basedir="." xmlns:fx="javafx:com.sun.javafx.tools.ant">
    <property name="java8.jdk.home" value="/Library/Java/JavaVirtualMachines/jdk1.8.0_11.jdk/Contents/Home" />
    <property name="javafx.tools.ant.jar" value="${java8.jdk.home}/lib/ant-javafx.jar" />
    <target name="init-fx-tasks">

[Code] .... 

During compiling I see:

Using base JDK at:

/Library/Java/JavaVirtualMachines/jdk1.8.0_11.jdk
  Using default package resource [Bundle config file] (add package/macosx/Info.plist to the class path to customize)
  Using default package resource [icon] (add package/macosx/app.icns to the class path to customize)
Creating app bundle: /Users/Utente/Documents/workspaceServer/javafx/target/deploy/bundles/app.app
Config files are saved to /var/folders/q6/vmt_h0tx3rgdbt_4h2_2f3780000gn/T/build6635061168386632777.fxbundler/macosx.

Use them to customize package.
fxbund
ler/macosx. Use them to customize package.
 
So I get files inside the temp directory and I copied them inside my project target directory. Unfortunally javafxbuilder don't use them to customize the package so I think the path where I have to put that files is wrong.

View Replies View Related







Copyrights 2005-15 www.BigResource.com, All rights reserved