Commit 96b841bc authored by Daniel Dreibrodt's avatar Daniel Dreibrodt

Version 0.7 ready for release

parent 7ade748a
......@@ -10,8 +10,8 @@ Changelog:
- Improved preview of skin (can be zoomed now)
- Improved cross platform behaviour
- Improved online help
- Some (critical) bugs were fixed
- Automatic update
- Some (critical) bugs were fixed
0.6.1b - Critical bufix for the Preview Window
- Bugfix for slider points parsing and XML parsing
......
[Files]
Source: ICE_JNIRegistry.dll; DestDir: {app}
Source: LICENSE.TXT; DestDir: {app}
Source: README.TXT; DestDir: {app}; Flags: isreadme
Source: VLCSkinEditor.exe; DestDir: {app}
Source: VLCSkinEditor.jar; DestDir: {app}
[Icons]
Name: {group}\VLC Skin Editor; Filename: {app}\VLCSkinEditor.exe; WorkingDir: {app}; IconFilename: {app}\VLCSkinEditor.exe; IconIndex: 0
Name: {group}\Uninstall VLC Skin Editor; Filename: {uninstallexe}
Name: {group}\Online Help; Filename: http://www.videolan.org/vlc/skinedhlp/
[Setup]
OutputBaseFilename=VLCSkinEditor_0_7_setup
VersionInfoVersion=0.7
VersionInfoCompany=VideoLAN
VersionInfoDescription=Setup for the VLC Skin Editor
VersionInfoCopyright=2008 VideoLAN
AppCopyright=2008 VideoLAN Team
AppName=VLC Skin Editor
AppVerName=0.7
LicenseFile=E:\Documents and Settings\Daniel\Eigene Dateien\java\skin-designer\LICENSE.TXT
PrivilegesRequired=poweruser
DefaultDirName={pf}\VideoLAN\VLC Skin Editor
DirExistsWarning=no
DefaultGroupName=VideoLAN\VLC Skin Editor
AppendDefaultGroupName=false
AppPublisher=VideoLAN
AppPublisherURL=http://www.videolan.org
AppSupportURL=http://www.videolan.org/vlc/skineditor.php
AppUpdatesURL=http://www.videolan.org/vlc/skineditor.php
AppVersion=0.7
AppID={{977C5080-EA08-435D-8901-233A506E1651}
AppReadmeFile={app}\README.TXT
UninstallDisplayIcon={app}\VLCSkinEditor.exe
UninstallDisplayName=VLC Skin Editor
ChangesAssociations=true
OutputDir=.
[Registry]
Root: HKCR; Subkey: .vlt; ValueType: string; ValueData: VLCSkinFile; Flags: uninsdeletevalue
Root: HKCR; Subkey: VLCSkinFile; ValueType: string; ValueData: Compressed VLC Skin; Flags: uninsdeletevalue
Root: HKCR; Subkey: VLCSkinFile\DefaultIcon; ValueType: string; ValueData: """{app}\VLCSkineditor.exe"""
Root: HKCR; Subkey: VLCSkinFile\shell\open\command; ValueType: string; ValueName: ; ValueData: """{app}\VLCSkinEditor.exe"" ""%1"""
Root: HKCR; Subkey: VLCSkinFile\shell\open; ValueType: string; ValueData: Edit with VLC Skin Editor
[_ISToolPreCompile]
Name: E:\Documents and Settings\Daniel\Eigene Dateien\java\skin-designer\build.bat; Parameters:
No preview for this file type
......@@ -372,6 +372,7 @@ public class GlobalVariables implements ActionListener{
}
/**
* Handles actions triggered by components listened to
* @param e ActionEvent
*/
public void actionPerformed(ActionEvent e) {
if(e.getSource().equals(ok_btn)) {
......@@ -385,19 +386,20 @@ public class GlobalVariables implements ActionListener{
if (Desktop.isDesktopSupported()) {
desktop = Desktop.getDesktop();
try {
desktop.browse(new java.net.URI("http://www.videolan.org/vlc/skins2-create.html#boolexpr"));
desktop.browse(new java.net.URI("http://www.videolan.org/vlc/skinedhlp/boolexpr.html"));
}
catch (Exception ex) {
JOptionPane.showMessageDialog(null,ex.toString(),ex.getMessage(),JOptionPane.ERROR_MESSAGE);
}
}
else {
JOptionPane.showMessageDialog(null,"Could not launch Browser","Go to the following URL manually:\nhttp://www.videolan.org/vlc/skins2-create.html",JOptionPane.WARNING_MESSAGE);
JOptionPane.showMessageDialog(null,"Could not launch Browser","Go to the following URL manually:\nhttp://www.videolan.org/vlc/skinedhlp/boolexpr.html",JOptionPane.WARNING_MESSAGE);
}
}
}
/**
* Gets the slider value
* @return Slider Value
*/
public float getSliderValue() {
return slider_value;
......
......@@ -26,6 +26,7 @@ import java.util.*;
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import java.net.*;
import javax.swing.*;
import javax.swing.tree.*;
import javax.swing.event.*;
......@@ -44,9 +45,13 @@ import vlcskineditor.resources.SubBitmap;
* @author Daniel
*/
public class Main extends javax.swing.JFrame implements ActionListener, TreeSelectionListener, WindowListener, MouseListener{
private static final long serialVersionUID = 70L; //For completions sake
private final String updateURL_s = "http://www.videolan.org/vlc/skineditor_update.php";
//The version identification of the current build.
public final String VERSION = "0.7.0 dev";
public final String VERSION = "0.7";
//The directory in which the VLC executable is found
String vlc_dir = "";
//The directory from which VLC loads its skins
......@@ -223,7 +228,7 @@ public class Main extends javax.swing.JFrame implements ActionListener, TreeSele
m_help = new JMenu("Help");
m_help.setMnemonic('H');
m_help_doc = new JMenuItem("Skins2 documentation");
m_help_doc = new JMenuItem("Online Help");
m_help_doc.setIcon(help_icon);
m_help_doc.setMnemonic('D');
m_help_doc.addActionListener(this);
......@@ -558,44 +563,54 @@ public class Main extends javax.swing.JFrame implements ActionListener, TreeSele
jdesk.add(items_add_pu);
jdesk.setMinimumSize(new Dimension(800,600));
add(jdesk);
add(jdesk);
setVisible(true);
setSize(800,600);
update();
getVLCdirectory();
if(args.length>0) {
File f = new File(args[0]);
if (f.exists()) openFile(f);
else {
}
}
else showWelcomeDialog();
}
/**
* On Windows it reads the VLC skins directory from registry
* When on Linux it is set to ~/.vlc/skins2/
*/
private void getVLCdirectory() {
if(System.getProperty("os.name").indexOf("Windows")!=-1) {
try {
RegistryKey vlc_key = Registry.openSubkey(Registry.HKEY_LOCAL_MACHINE,"Software\\VideoLAN\\VLC",RegistryKey.ACCESS_READ);
String installDir = vlc_key.getStringValue("InstallDir");
RegistryKey vlc_key = Registry.openSubkey(Registry.HKEY_LOCAL_MACHINE,"Software\\VideoLAN\\VLC",RegistryKey.ACCESS_READ);
String installDir = vlc_key.getStringValue("InstallDir");
vlc_dir = installDir+File.separator;
vlc_skins_dir = vlc_dir+"skins";
}
catch (Exception e) {
System.err.println("Could not read VLC installation directory from Registry. VLC might not be properly installed.");
e.printStackTrace();
}
}
else if(System.getProperty("os.name").indexOf("Linux")!=-1){
}
}
else if(System.getProperty("os.name").indexOf("Linux")!=-1){
vlc_skins_dir = "~/.vlc/skins2/";
}
base_fc = new JFileChooser();
if(base_fc==null) base_fc = new JFileChooser();
base_fc.setCurrentDirectory(new File(vlc_skins_dir));
setVisible(true);
setSize(800,600);
if(args.length>0) {
File f = new File(args[0]);
if (f.exists()) openFile(f);
else {
}
}
else showWelcomeDialog();
}
/**
* Shows a dialog from which the user can choose to either create a new skin, open an existing skin or quit the skin editor.
*/
public void showWelcomeDialog() {
private void showWelcomeDialog() {
Object[] options= {"Create a new skin", "Open an exisiting skin","Quit"};
int n = JOptionPane.showOptionDialog(this,"What would you like to do?","Welcome to the VLC Skin Editor",
JOptionPane.YES_NO_CANCEL_OPTION,JOptionPane.QUESTION_MESSAGE,null,options,options[1]);
......@@ -612,7 +627,7 @@ public class Main extends javax.swing.JFrame implements ActionListener, TreeSele
/**
* Shows the "Open File" dialog.
*/
public void openFile() {
private void openFile() {
opening = true;
String[] exts = { "xml","vlt" };
if(System.getProperty("os.name").indexOf("Mac")==-1) {
......@@ -652,7 +667,7 @@ public class Main extends javax.swing.JFrame implements ActionListener, TreeSele
* Opens the given file as a skin.
* @param f The skin file.
*/
public void openFile(File f) {
private void openFile(File f) {
if(!f.exists()) {
JOptionPane.showMessageDialog(this,"The file \""+f.getPath()+"\" does not exist and thus could not be opened!","Error while opening file",JOptionPane.ERROR_MESSAGE);
if(!opened) showWelcomeDialog();
......@@ -665,7 +680,9 @@ public class Main extends javax.swing.JFrame implements ActionListener, TreeSele
Object[] options= {"Yes, unpack", "No, cancel"};
int n = JOptionPane.showOptionDialog(this,"The VLT file will be unpacked to a subfolder called \""+vltname+"_unpacked\".\nDo you want to continue?","Importing a VLT file",
JOptionPane.YES_NO_CANCEL_OPTION,JOptionPane.QUESTION_MESSAGE,null,options,options[1]);
if(n!=0) return;
if(n!=0) {
showWelcomeDialog();
}
File unpackfolder = new File(f.getParent(),vltname+"_unpacked");
unpackfolder.mkdirs();
boolean unpacked=false;
......@@ -765,7 +782,7 @@ public class Main extends javax.swing.JFrame implements ActionListener, TreeSele
/**
* Shows a dialog to specify the new skin's location and creates an empty skin.
*/
public void createNew() {
private void createNew() {
base_fc.setFileFilter(new CustomFileFilter(base_fc,"xml","*.xml (VLC XML-Skin Files)",false,vlc_dir));
int returnVal=base_fc.showSaveDialog(this);
if(returnVal != JFileChooser.APPROVE_OPTION) {
......@@ -787,6 +804,7 @@ public class Main extends javax.swing.JFrame implements ActionListener, TreeSele
}
/**
* Reacts to GUI actions
* @param e The performed action
*/
public void actionPerformed(ActionEvent e) {
// <editor-fold defaultstate="collapsed" desc="New File">
......@@ -1606,20 +1624,28 @@ public class Main extends javax.swing.JFrame implements ActionListener, TreeSele
public void mouseReleased(MouseEvent e) {}
public void mouseEntered(MouseEvent e) {}
public void mouseExited(MouseEvent e) {}
/** Sets the activity state of the undo menu item to the given argument */
/** Sets the activity state of the undo menu item to the given argument
* @param enabled Activity state
*/
public void setUndoEnabled(boolean enabled) {
m_edit_undo.setEnabled(enabled);
}
/** Sets the activity state of the redo menu item to the given argument */
/** Sets the activity state of the redo menu item to the given argument
* @param enabled Activity state
*/
public void setRedoEnabled(boolean enabled) {
m_edit_redo.setEnabled(enabled);
}
/** Sets the action description that can be undone */
/** Sets the action description that can be undone
* @param s Action description
*/
public void setUndoString(String s) {
if(s.isEmpty()) m_edit_undo.setText("Undo");
else m_edit_undo.setText("Undo: "+s);
}
/** Sets the action description that can be redone */
/** Sets the action description that can be redone
* @param s Action description
*/
public void setRedoString(String s) {
if(s.isEmpty()) m_edit_redo.setText("Redo");
else m_edit_redo.setText("Redo: "+s);
......@@ -1639,7 +1665,125 @@ public class Main extends javax.swing.JFrame implements ActionListener, TreeSele
System.out.println(e);
return null;
}
}
}
/**
* Checks for updates and downloads and installs them if chosen by user
*/
private void update() {
if(VERSION.contains("dev")) return; //Development build won't be updated
try {
URL updateURL = new URL(updateURL_s);
InputStream uis = updateURL.openStream();
InputStreamReader uisr = new InputStreamReader(uis);
BufferedReader ubr = new BufferedReader(uisr);
String header = ubr.readLine();
if(header.equals("SKINEDITORUPDATEPAGE")) {
String cver = ubr.readLine();
String cdl = ubr.readLine();
if(!cver.equals(VERSION)) {
System.out.println("Update available!");
int i = JOptionPane.showConfirmDialog(this, "There is an update available for the Skin Editor.\nYour version: "+VERSION+"\nLatest version: "+cver+"\n"+
"Do you want to update the Skin Editor now?", "VLC Skin Editor", JOptionPane.YES_NO_OPTION);
if(i==0) {
URL url = new URL(cdl);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
// Connect to server.
connection.connect();
// Make sure response code is in the 200 range.
if (connection.getResponseCode() / 100 != 2) {
throw new Exception("Server error! Response code: "+connection.getResponseCode());
}
// Check for valid content length.
int contentLength = connection.getContentLength();
if (contentLength < 1) {
throw new Exception("Invalid content length!");
}
int size = contentLength;
File tempfile = File.createTempFile("vlcse_update", ".zip");
tempfile.deleteOnExit();
RandomAccessFile file = new RandomAccessFile(tempfile,"rw");
InputStream stream = connection.getInputStream();
boolean downloading = true;
int downloaded = 0;
ProgressWindow pwin = new ProgressWindow(this,"Downloading");
pwin.setVisible(true);
pwin.setProgress(0);
pwin.setText("Connecting...");
while (downloaded<size) {
/* Size buffer according to how much of the
file is left to download. */
byte buffer[];
if (size - downloaded > 1024) {
buffer = new byte[1024];
} else {
buffer = new byte[size - downloaded];
}
int read = stream.read(buffer);
if (read == -1)
break;
// Write buffer to file.
file.write(buffer, 0, read);
downloaded += read;
pwin.setProgress(downloaded/size);
}
file.close();
System.out.println("Downloaded file to "+tempfile.getAbsolutePath());
pwin.setVisible(false);
pwin.dispose();
pwin = null;
ZipInputStream zin = new ZipInputStream(new FileInputStream(tempfile));
ZipEntry entry;
while( (entry=zin.getNextEntry()) !=null ) {
File outf = new File(entry.getName());
System.out.println(outf.getAbsoluteFile());
if(outf.exists()) outf.delete();
OutputStream out = new FileOutputStream(outf);
byte[] buf = new byte[1024];
int len;
while ((len = zin.read(buf)) > 0) {
out.write(buf, 0, len);
}
out.close();
}
JOptionPane.showMessageDialog(this, "Update was sucessfully downloaded and installed.\nVLC Skin Editor will restart now",
"VLC Skin Editor update", JOptionPane.INFORMATION_MESSAGE);
setVisible(false);
if(System.getProperty("os.name").indexOf("Windows")!=-1) {
Runtime.getRuntime().exec("VLCSkinEditor.exe");
} else {
Runtime.getRuntime().exec("java -jar VLCSkinEditor.jar");
}
System.exit(0);
} else {
//DO NOTHING!
}
}
ubr.close();
uisr.close();
uis.close();
} else {
ubr.close();
uisr.close();
uis.close();
throw new Exception("Update page had invalid header: "+header);
}
} catch(Exception ex) {
JOptionPane.showMessageDialog(this, ex.toString(), "Error while updating...", JOptionPane.ERROR_MESSAGE);
ex.printStackTrace();
}
}
/**
* Creates a new instance of Main and thus launches the editor
* @param args the command line arguments
......
......@@ -36,7 +36,7 @@ import vlcskineditor.history.*;
* @author Daniel Dreibrodt
*/
public class PreviewWindow extends JPanel implements MouseListener, MouseMotionListener, ActionListener {
/**
* The JFrame in which a Layout of a Skin will be shown.
*/
......
......@@ -32,26 +32,30 @@ import java.awt.*;
public class ProgressWindow extends JDialog{
float position = 0;
String title = "...";
JProgressBar pbar;
/** Creates a new instance of ProgressWindow */
/** Creates a new instance of ProgressWindow
* @param p_ parent frame
* @param t_ window title
*/
public ProgressWindow(JFrame p_, String t_) {
super(p_,"",false);
super(p_,t_,false);
setLayout(new BorderLayout());
pbar = new JProgressBar();
add(pbar,BorderLayout.CENTER);
setBounds(p_.getX()+p_.getWidth()/2,p_.getY()+p_.getHeight()/2,300,50);
setResizable(false);
pbar.setString(t_);
if(p_ != null && p_.isVisible()) setBounds(p_.getX()+p_.getWidth()/2,p_.getY()+p_.getHeight()/2,300,50);
else setSize(300,50);
setResizable(false);
pbar.setString("...");
pbar.setStringPainted(true);
pbar.setIndeterminate(true);
}
public void setProgress(int i) {
pbar.setIndeterminate(false);
pbar.setMaximum(1000);
pbar.setMinimum(0);
pbar.setValue(i);
public void setProgress(double d) {
pbar.setIndeterminate(false);
pbar.setMaximum(100);
pbar.setMinimum(0);
pbar.setValue((int)(100*d));
pbar.setString(pbar.getValue()+"%");
}
/** Sets the text displayed on the progress bar */
public void setText(String s) {
......
......@@ -439,7 +439,7 @@ public class Skin implements ActionListener{
if (Desktop.isDesktopSupported()) {
desktop = Desktop.getDesktop();
try {
desktop.browse(new java.net.URI("http://www.videolan.org/vlc/skins2-create.html#Theme"));
desktop.browse(new java.net.URI("http://www.videolan.org/vlc/skinedhlp/theme.html"));
}
catch (Exception ex) {
JOptionPane.showMessageDialog(null,ex.toString(),ex.getMessage(),JOptionPane.ERROR_MESSAGE);
......
......@@ -251,7 +251,7 @@ public class Anchor extends Item implements ActionListener{
if (Desktop.isDesktopSupported()) {
desktop = Desktop.getDesktop();
try {
desktop.browse(new java.net.URI("http://www.videolan.org/vlc/skins2-create.html#Anchor"));
desktop.browse(new java.net.URI("http://www.videolan.org/vlc/skinedhlp/i-anchor.html"));
}
catch (Exception ex) {
JOptionPane.showMessageDialog(null,ex.toString(),ex.getMessage(),JOptionPane.ERROR_MESSAGE);
......
......@@ -330,14 +330,14 @@ public class Button extends Item implements ActionListener{
if (Desktop.isDesktopSupported()) {
desktop = Desktop.getDesktop();
try {
desktop.browse(new java.net.URI("http://www.videolan.org/vlc/skins2-create.html#Button"));
desktop.browse(new java.net.URI("http://www.videolan.org/vlc/skinedhlp/i-button.html"));
}
catch (Exception ex) {
JOptionPane.showMessageDialog(null,ex.toString(),ex.getMessage(),JOptionPane.ERROR_MESSAGE);
}
}
else {
JOptionPane.showMessageDialog(null,"Could not launch Browser","Go to the following URL manually:\nhttp://www.videolan.org/vlc/skins2-create.html",JOptionPane.WARNING_MESSAGE);
JOptionPane.showMessageDialog(null,"Could not launch Browser","Go to the following URL manually:\nhttp://www.videolan.org/vlc/skinedhlp/i-button.html",JOptionPane.WARNING_MESSAGE);
}
}
else if(e.getSource().equals(visible_btn)) {
......@@ -345,14 +345,14 @@ public class Button extends Item implements ActionListener{
if (Desktop.isDesktopSupported()) {
desktop = Desktop.getDesktop();
try {
desktop.browse(new java.net.URI("http://www.videolan.org/vlc/skins2-create.html#boolexpr"));
desktop.browse(new java.net.URI("http://www.videolan.org/vlc/skinedhlp/boolexpr.html"));
}
catch (Exception ex) {
JOptionPane.showMessageDialog(null,ex.toString(),ex.getMessage(),JOptionPane.ERROR_MESSAGE);
}
}
else {
JOptionPane.showMessageDialog(null,"Could not launch Browser","Go to the following URL manually:\nhttp://www.videolan.org/vlc/skins2-create.html",JOptionPane.WARNING_MESSAGE);
JOptionPane.showMessageDialog(null,"Could not launch Browser","Go to the following URL manually:\nhttp://www.videolan.org/vlc/skinedhlp/boolexpr.html",JOptionPane.WARNING_MESSAGE);
}
}
else if(e.getSource().equals(action_btn)) {
......
......@@ -323,7 +323,7 @@ public class Checkbox extends Item implements ActionListener{
state1.add(tooltiptext1_tf);
tooltiptext1_l.setBounds(5,135,75,24);
tooltiptext1_tf.setBounds(85,135,150,24);
state1.setBorder(BorderFactory.createTitledBorder(BorderFactory.createEtchedBorder(EtchedBorder.LOWERED), "If state is false:"));
state1.setBorder(BorderFactory.createTitledBorder(BorderFactory.createEtchedBorder(EtchedBorder.LOWERED), "State One (Condition is not fulfilled:"));
state1.setMinimumSize(new Dimension(240,165));
state1.setPreferredSize(new Dimension(240,165));
state1.setMaximumSize(new Dimension(240,165));
......@@ -352,7 +352,7 @@ public class Checkbox extends Item implements ActionListener{
state2.add(tooltiptext2_tf);
tooltiptext2_l.setBounds(5,135,75,24);
tooltiptext2_tf.setBounds(85,135,150,24);
state2.setBorder(BorderFactory.createTitledBorder(BorderFactory.createEtchedBorder(EtchedBorder.LOWERED), "If state is true:"));
state2.setBorder(BorderFactory.createTitledBorder(BorderFactory.createEtchedBorder(EtchedBorder.LOWERED), "State Two (Condition is fulfilled):"));
state2.setMinimumSize(new Dimension(240,165));
state2.setPreferredSize(new Dimension(240,165));
state2.setMaximumSize(new Dimension(240,165));
......@@ -446,14 +446,14 @@ public class Checkbox extends Item implements ActionListener{
if (Desktop.isDesktopSupported()) {
desktop = Desktop.getDesktop();
try {
desktop.browse(new java.net.URI("http://www.videolan.org/vlc/skins2-create.html#Checkbox"));
desktop.browse(new java.net.URI("http://www.videolan.org/vlc/skinedhlp/i-checkbox.html"));
}
catch (Exception ex) {
JOptionPane.showMessageDialog(null,ex.toString(),ex.getMessage(),JOptionPane.ERROR_MESSAGE);
}
}
else {
JOptionPane.showMessageDialog(null,"Could not launch Browser","Go to the following URL manually:\nhttp://www.videolan.org/vlc/skins2-create.html",JOptionPane.WARNING_MESSAGE);
JOptionPane.showMessageDialog(null,"Could not launch Browser","Go to the following URL manually:\nhttp://www.videolan.org/vlc/skinedhlp/i-checkbox.html",JOptionPane.WARNING_MESSAGE);
}
}
else if(e.getSource().equals(state_btn)) {
......@@ -461,14 +461,14 @@ public class Checkbox extends Item implements ActionListener{
if (Desktop.isDesktopSupported()) {
desktop = Desktop.getDesktop();
try {
desktop.browse(new java.net.URI("http://www.videolan.org/vlc/skins2-create.html#boolexpr"));
desktop.browse(new java.net.URI("http://www.videolan.org/vlc/skinedhlp/boolexpr.html"));
}
catch (Exception ex) {
JOptionPane.showMessageDialog(null,ex.toString(),ex.getMessage(),JOptionPane.ERROR_MESSAGE);
}
}
else {
JOptionPane.showMessageDialog(null,"Could not launch Browser","Go to the following URL manually:\nhttp://www.videolan.org/vlc/skins2-create.html",JOptionPane.WARNING_MESSAGE);
JOptionPane.showMessageDialog(null,"Could not launch Browser","Go to the following URL manually:\nhttp://www.videolan.org/vlc/skinedhlp/boolexpr.html",JOptionPane.WARNING_MESSAGE);
}
}
else if(e.getSource().equals(action1_btn)) {
......@@ -484,14 +484,14 @@ public class Checkbox extends Item implements ActionListener{
if (Desktop.isDesktopSupported()) {
desktop = Desktop.getDesktop();
try {
desktop.browse(new java.net.URI("http://www.videolan.org/vlc/skins2-create.html#boolexpr"));
desktop.browse(new java.net.URI("http://www.videolan.org/vlc/skinedhlp/boolexpr.html"));
}
catch (Exception ex) {
JOptionPane.showMessageDialog(null,ex.toString(),ex.getMessage(),JOptionPane.ERROR_MESSAGE);
}
}
else {
JOptionPane.showMessageDialog(null,"Could not launch Browser","Go to the following URL manually:\nhttp://www.videolan.org/vlc/skins2-create.html",JOptionPane.WARNING_MESSAGE);
JOptionPane.showMessageDialog(null,"Could not launch Browser","Go to the following URL manually:\nhttp://www.videolan.org/vlc/skinedhlp/boolexpr.html",JOptionPane.WARNING_MESSAGE);
}
}
else if(e.getSource().equals(cancel_btn)) {
......
......@@ -228,14 +228,14 @@ public class Group extends Item implements ActionListener{
if (Desktop.isDesktopSupported()) {
desktop = Desktop.getDesktop();
try {
desktop.browse(new java.net.URI("http://www.videolan.org/vlc/skins2-create.html#Group"));
desktop.browse(new java.net.URI("http://www.videolan.org/vlc/skinedhlp/i-group.html"));
}
catch (Exception ex) {
JOptionPane.showMessageDialog(null,ex.toString(),ex.getMessage(),JOptionPane.ERROR_MESSAGE);
}
}
else {
JOptionPane.showMessageDialog(null,"Could not launch Browser","Go to the following URL manually:\nhttp://www.videolan.org/vlc/skins2-create.html",JOptionPane.WARNING_MESSAGE);
JOptionPane.showMessageDialog(null,"Could not launch Browser","Go to the following URL manually:\nhttp://www.videolan.org/vlc/skinedhlp/i-group.html",JOptionPane.WARNING_MESSAGE);
}
}
else if(e.getSource().equals(cancel_btn)) {
......
......@@ -316,14 +316,14 @@ public class Image extends Item implements ActionListener{
if (Desktop.isDesktopSupported()) {
desktop = Desktop.getDesktop();
try {
desktop.browse(new java.net.URI("http://www.videolan.org/vlc/skins2-create.html#Image"));
desktop.browse(new java.net.URI("http://www.videolan.org/vlc/skinedhlp/i-image.html"));
}
catch (Exception ex) {
JOptionPane.showMessageDialog(null,ex.toString(),ex.getMessage(),JOptionPane.ERROR_MESSAGE);
}
}
else {
JOptionPane.showMessageDialog(null,"Could not launch Browser","Go to the following URL manually:\nhttp://www.videolan.org/vlc/skins2-create.html",JOptionPane.WARNING_MESSAGE);
JOptionPane.showMessageDialog(null,"Could not launch Browser","Go to the following URL manually:\nhttp://www.videolan.org/vlc/skinedhlp/i-image.html",JOptionPane.WARNING_MESSAGE);
}
}
else if(e.getSource().equals(action2_btn)) {
......@@ -335,7 +335,7 @@ public class Image extends Item implements ActionListener{
if (Desktop.isDesktopSupported()) {
desktop = Desktop.getDesktop();
try {
desktop.browse(new java.net.URI("http://www.videolan.org/vlc/skins2-create.html#boolexpr"));
desktop.browse(new java.net.URI("http://www.videolan.org/vlc/skinedhlp/boolexpr.html"));
}
catch (Exception ex) {
JOptionPane.showMessageDialog(null,ex.toString(),ex.getMessage(),JOptionPane.ERROR_MESSAGE);
......
......@@ -335,14 +335,14 @@ public class Panel extends Item implements ActionListener{
if (Desktop.isDesktopSupported()) {
desktop = Desktop.getDesktop();
try {
desktop.browse(new java.net.URI("http://www.videolan.org/vlc/skins2-create.html#Panel"));
desktop.browse(new java.net.URI("http://www.videolan.org/vlc/skinedhlp/i-panel.html"));
}
catch (Exception ex) {
JOptionPane.showMessageDialog(null,ex.toString(),ex.getMessage(),JOptionPane.ERROR_MESSAGE);
}
}
else {
JOptionPane.showMessageDialog(null,"Could not launch Browser","Go to the following URL manually:\nhttp://www.videolan.org/vlc/skins2-create.html",JOptionPane.WARNING_MESSAGE);
JOptionPane.showMessageDialog(null,"Could not launch Browser","Go to the following URL manually:\nhttp://www.videolan.org/vlc/skinedhlp/i-panel.html",JOptionPane.WARNING_MESSAGE);
}
}
else if(e.getSource().equals(cancel_btn)) {
......
......@@ -570,27 +570,27 @@ public class Playtree extends Item implements ActionListener{
if (Desktop.isDesktopSupported()) {
desktop = Desktop.getDesktop();
try {
desktop.browse(new java.net.URI("http://www.videolan.org/vlc/skins2-create.html#Playtree"));
desktop.browse(new java.net.URI("http://www.videolan.org/vlc/skinedhlp/i-playtree.html"));
}
catch (Exception ex) {
JOptionPane.showMessageDialog(null,ex.toString(),ex.getMessage(),JOptionPane.ERROR_MESSAGE);
}
}
else JOptionPane.showMessageDialog(null,"Could not launch Browser","Go to the following URL manually:\nhttp://www.videolan.org/vlc/skins2-create.html",JOptionPane.WARNING_MESSAGE);
else JOptionPane.showMessageDialog(null,"Could not launch Browser","Go to the following URL manually:\nhttp://www.videolan.org/vlc/skinedhlp/i-playtree.html",JOptionPane.WARNING_MESSAGE);
}
else if(e.getSource().equals(visible_btn)) {
Desktop desktop;
if (Desktop.isDesktopSupported()) {
desktop = Desktop.getDesktop();
try {
desktop.browse(new java.net.URI("http://www.videolan.org/vlc/skins2-create.html#boolexpr"));
desktop.browse(new java.net.URI("http://www.videolan.org/vlc/skinedhlp/boolexpr.html"));
}
catch (Exception ex) {
JOptionPane.showMessageDialog(null,ex.toString(),ex.getMessage(),JOptionPane.ERROR_MESSAGE);
}
}
else {
JOptionPane.showMessageDialog(null,"Could not launch Browser","Go to the following URL manually:\nhttp://www.videolan.org/vlc/skins2-create.html",JOptionPane.WARNING_MESSAGE);
JOptionPane.showMessageDialog(null,"Could not launch Browser","Go to the following URL manually:\nhttp://www.videolan.org/vlc/skinedhlp/boolexpr.html",JOptionPane.WARNING_MESSAGE);
}
}
else if(e.getSource().equals(cancel_btn)) {
......
......@@ -464,14 +464,14 @@ public class Slider extends Item implements ActionListener{
if (Desktop.isDesktopSupported()) {
desktop = Desktop.getDesktop();
try {
desktop.browse(new java.net.URI("http://www.videolan.org/vlc/skins2-create.html#Slider"));
desktop.browse(new java.net.URI("http://www.videolan.org/vlc/skinedhlp/i-slider.html"));
}
catch (Exception ex) {
JOptionPane.showMessageDialog(null,ex.toString(),ex.getMessage(),JOptionPane.ERROR_MESSAGE);
}
}
else {
JOptionPane.showMessageDialog(null,"Could not launch Browser","Go to the following URL manually:\nhttp://www.videolan.org/vlc/skins2-create.html",JOptionPane.WARNING_MESSAGE);
JOptionPane.showMessageDialog(null,"Could not launch Browser","Go to the following URL manually:\nhttp://www.videolan.org/vlc/skinedhlp/i-slider.html",JOptionPane.WARNING_MESSAGE);
}
}
else if(e.getSource().equals(sbg_chb)) {
......@@ -492,14 +492,14 @@ public class Slider extends Item implements ActionListener{
if (Desktop.isDesktopSupported()) {
desktop = Desktop.getDesktop();
try {
desktop.browse(new java.net.URI("http://www.videolan.org/vlc/skins2-create.html#boolexpr"));
desktop.browse(new java.net.URI("http://www.videolan.org/vlc/skinedhlp/i-slider.html"));
}
catch (Exception ex) {
JOptionPane.showMessageDialog(null,ex.toString(),ex.getMessage(),JOptionPane.ERROR_MESSAGE);
}
}
else {
JOptionPane.showMessageDialog(null,"Could not launch Browser","Go to the following URL manually:\nhttp://www.videolan.org/vlc/skins2-create.html",JOptionPane.WARNING_MESSAGE);
JOptionPane.showMessageDialog(null,"Could not launch Browser","Go to the following URL manually:\nhttp://www.videolan.org/vlc/skinedhlp/i-slider.html",JOptionPane.WARNING_MESSAGE);
}