/*
* Copyright (c) 2006 Manuel Traut and Volker Dahnke
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Common Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/cpl-v10.html
*
* Contributors: Manuel Traut and Volker Dahnke
*/
package YalpClients.SwtClient.GUI;
import org.eclipse.swt.SWT;
import org.eclipse.swt.custom.*;
import org.eclipse.swt.graphics.*;
import org.eclipse.swt.layout.*;
import org.eclipse.swt.widgets.*;
import org.eclipse.swt.events.*;
import java.util.*;
import YalpInterfaces.*;
import YalpClients.SwtClient.*;
/*
*
* Class GUI
*
*
*
* @author Volker Dahnke / Manuel Traut
*
* @version 1 02-04-2006
*
*/
public class GUI extends org.eclipse.swt.widgets.Composite {
public Model model;
public Composite resultComposite;
public Composite playlistComposite;
public Composite bottemComposite;
public Table resultTable1;
public Table resultTable2;
public Composite composite1;
public Composite changeComposite;
public Table UserTable;
public Composite composite3;
private AccessRights userKind;
private StyledText styledText1;
private CTabFolder cTabFolder1;
private CTabItem tab1;
private Composite container1;
private Composite topComposite;
private Group find;
private Group logo;
private CTabItem tab2;
private Composite container2;
private Group group1;
private Group group2;
private CLabel authorLabel;
private CLabel titleLabel;
private CLabel streamLabel2;
private CLabel actualStreamLabel2;
private CLabel actualStreamLabel1;
private CLabel streamLabel1;
private CLabel data2;
private CLabel data1;
private Button shutdown;
private TableColumn ip;
private TableColumn userName;
public Table iptable;
private Composite composite4;
private Button submitButton;
private CLabel adminAddLabel;
private CLabel passwdAddLable;
private CLabel usernameAddLable;
private CLabel realnameAddLabel;
private CCombo adminAdd;
private Text realnameAdd;
private Text passwdAdd;
private Text usernameAdd;
private Group tab3group5;
private Button next;
private Button stop;
private Button play;
private CLabel cLabel2;
private Button save;
private Text userTableId;
private Text passwd;
private Text username;
private Text userTableName;
private CLabel adminLabel;
private CCombo adminCombo;
private CLabel nameLable;
private CLabel passwdLable;
private CLabel usernameLable;
private CLabel idLable;
private Group tab3group4;
private Button delete;
private Button add1;
private Group tab3Group3;
private Group tab3Group2;
private Group tab3Group1;
private Composite container3;
private Button deleteButton;
private Button addButton;
private StyledText status;
private Button saveButton;
private Text id;
private CLabel idLabel;
private CLabel cLabel1;
private CLabel nameLabel;
private CLabel pathLabel;
private CLabel lastEditLable;
private CLabel ownerIdLabel;
private CLabel resolutionLabel;
private CLabel vBitrateLabel;
private CLabel aBitrateLabel;
private CLabel durationLabel;
private CLabel yearLabel;
private CLabel categoryLabel;
private CLabel albumLabel;
private CCombo type;
private Text name;
private Text path;
private Text lastEdit;
private Text ownerId;
private Text resolution;
private Text vBitrate;
private Text aBitrate;
private Text duration;
private Text year;
private Text category;
private Text album;
private Text author;
private Text title;
private Composite composite2;
private Table playlistTable;
private Button add2;
private Button del;
private Boolean isNotPlaying=true;
private Boolean paused =true;
private CTabItem tab3;
private Composite parent;
private Display display;
final Image pauseImage=new Image(this.getDisplay(),"img/pause.gif");
final Image playImage=new Image(this.getDisplay(),"img/play.gif");
final Image forwardImage=new Image(this.getDisplay(),"img/forward.gif");
{
//Register as a resource user - SWTResourceManager will
//handle the obtaining and disposing of resources
SWTResourceManager.registerResourceUser(this);
}
public GUI( Composite parent, Display display, Model model,
AccessRights userKind, int style ) {
super(parent, style);
this.parent = parent;
this.display = display;
this.model = model;
this.userKind = userKind;
initGUI();
}
private void initGUI() {
try {
this.setSize(800, 600);
this.setBackground(SWTResourceManager.getColor(192, 192, 192));
GridLayout thisLayout = new GridLayout(1, true);
thisLayout.marginWidth = 5;
thisLayout.marginHeight = 5;
thisLayout.numColumns = 1;
thisLayout.makeColumnsEqualWidth = true;
thisLayout.horizontalSpacing = 5;
thisLayout.verticalSpacing = 5;
this.setLayout(thisLayout);
{
if (this.userKind.value() == AccessRights._USER){
cTabFolder1 = new CTabFolder(this, SWT.NONE);
GridData cTabFolder1LData = new GridData();
cTabFolder1LData.widthHint = 787;
cTabFolder1LData.heightHint = 568;
cTabFolder1.setLayoutData(cTabFolder1LData);
{
tab1 = new CTabItem(cTabFolder1,SWT.NONE);
tab1.setText("Find");
{
container1 = new Composite(cTabFolder1,SWT.NONE);
tab1.setControl(container1);
RowLayout container1Layout = new RowLayout(org.eclipse.swt.SWT.HORIZONTAL);
container1.setLayout(container1Layout);
{
topComposite = new Composite(container1,SWT.NONE);
GridLayout topCompositeLayout = new GridLayout();
topCompositeLayout.makeColumnsEqualWidth = true;
topCompositeLayout.numColumns = 2;
topCompositeLayout.verticalSpacing = 2;
topCompositeLayout.horizontalSpacing = 5;
topComposite.setLayout(topCompositeLayout);
RowData topCompositeLData = new RowData();
topCompositeLData.width = 783;
topCompositeLData.height = 566;
topComposite.setLayoutData(topCompositeLData);
{
find = new Group(topComposite,SWT.NONE);
this.find(find,resultComposite,playlistComposite,bottemComposite,1);
}
{
logo = new Group(topComposite,SWT.NONE);
this.logo(logo);
}
{
resultComposite = new Composite(topComposite,SWT.NONE);
resultTable1 = new Table(resultComposite,SWT.MULTI|SWT.FULL_SELECTION);
resultTable1.setToolTipText("Medias");
resultTable1.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent evt) {
add2.setEnabled(true);
}
});
this.resultTable(resultComposite,resultTable1,1);
}
{
playlistComposite = new Composite(topComposite,SWT.NONE);
FormLayout playlistCompositeLayout = new FormLayout();
playlistComposite.setLayout(playlistCompositeLayout);
GridData playlistCompositeLData = new GridData();
playlistCompositeLData.heightHint = 390;
playlistCompositeLData.horizontalAlignment = GridData.FILL;
playlistComposite.setLayoutData(playlistCompositeLData);
playlistComposite.setVisible(false);
playlistComposite.setSize(238, 390);
{
next = new Button(playlistComposite,SWT.PUSH | SWT.CENTER);
FormData nextLData = new FormData();
nextLData.width = 45;
nextLData.height = 21;
nextLData.left = new FormAttachment(0, 1000, 185);
nextLData.top = new FormAttachment(0, 1000, 365);
next.setLayoutData(nextLData);
next.setEnabled(false);
next.setFont(SWTResourceManager.getFont("Times", 8, 1, false, false));
next.setToolTipText("play next Title");
next.setImage(forwardImage);
next.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent evt) {
model.next();
}
});
}
{
stop = new Button(playlistComposite,SWT.PUSH | SWT.CENTER);
FormData stopLData = new FormData();
stopLData.width = 35;
stopLData.height = 21;
stopLData.left = new FormAttachment(0, 1000, 91);
stopLData.top = new FormAttachment(0, 1000, 365);
stop.setLayoutData(stopLData);
stop.setImage(new Image(this.getDisplay(),"img/stop.gif"));
stop.setEnabled(false);
stop.setToolTipText("stop");
stop.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent evt) {
if (model.stop()){
play.setEnabled(true);
next.setEnabled(false);
stop.setEnabled(false);
play.setImage(playImage);
play.setToolTipText("play");
isNotPlaying=true;
}
}
});
}
{
play = new Button(playlistComposite,SWT.PUSH | SWT.CENTER);
FormData playLData = new FormData();
playLData.width = 35;
playLData.height = 21;
playLData.left = new FormAttachment(0, 1000, 50);
playLData.top = new FormAttachment(0, 1000, 365);
play.setLayoutData(playLData);
play.setImage(playImage);
play.setEnabled(false);
play.setToolTipText("play");
play.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent evt) {
stop.setEnabled(true);
if (playlistTable.getItemCount()>1)next.setEnabled(true);
del.setEnabled(false);
//add2.setEnabled(false);
if (isNotPlaying){
play.setCursor(SWTResourceManager.getCursor(SWT.CURSOR_WAIT));
if(model.play()){
play.setImage(pauseImage);
play.setToolTipText("pause");
play.setCursor(SWTResourceManager.getCursor(SWT.NONE));
isNotPlaying= false;
}else;
}else{
if(model.pause()){
if (paused){
play.setImage(playImage);
play.setToolTipText("play");
paused=false;
}else{
play.setImage(pauseImage);
play.setToolTipText("pause");
paused=true;
}
}else;
}
}
});
}
{
add2 = new Button(playlistComposite,SWT.PUSH | SWT.CENTER);
FormData addLData = new FormData();
addLData.width = 25;
addLData.height = 21;
addLData.left = new FormAttachment(0, 1000, 2);
addLData.top = new FormAttachment(0, 1000, 160);
add2.setLayoutData(addLData);
add2.setText(">>");
add2.setEnabled(false);
add2.setToolTipText("add to Playlist");
add2.setFont(SWTResourceManager.getFont("Times", 8, 1, false, false));
add2.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent evt) {
if (System.getProperty("os.name")== "Mac OS X"){
for (int i=resultTable1.getSelectionCount()-1;i>=0;i--){
int id=new Integer(resultTable1.getSelection()[i].getText(0)).intValue();
System.out.println(resultTable1.getSelection()[i].getText(1));
model.add2PlayList(id);
}
}else{
for (int i=0;i playlist=model.getToPlaylist();
for(int i=0;i1&& !isNotPlaying)next.setEnabled(true);
}
});
}
{
del = new Button(playlistComposite,SWT.PUSH | SWT.CENTER);
FormData delLData = new FormData();
delLData.width = 25;
delLData.height = 21;
delLData.left = new FormAttachment(0, 1000, 2);
delLData.top = new FormAttachment(0, 1000, 200);
del.setLayoutData(delLData);
del.setEnabled(false);
del.setToolTipText("del from Playlist");
del.setText("<<");
del.setFont(SWTResourceManager.getFont("Times", 8, 1, false, false));
del.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent evt) {
for (int i=playlistTable.getSelectionCount()-1;i>=0;i--){
int pos = playlistTable.getSelectionIndices()[i];
model.removeFromPlayList(pos);
}
del.setEnabled(false);
while(playlistTable.getItemCount()!=0){
playlistTable.remove(0);
}
ArrayList playlist=model.getToPlaylist();
for(int i=0;i resultList = model.getUser();
for (int i = 0; i < resultList.size(); i++) {
TableItem item;
YalpUser result = resultList.get(i);
item = new TableItem(UserTable,SWT.NONE);
item.setText(0,new Integer(result.id).toString());
item.setText(1,result.name);
// item.setText(2,result.password);
item.setText(3,result.realName);
item.setText(4,model.accessRightsName(result.level));
}
tab3group4.setVisible(false);
}
});
}
{
add1 = new Button(tab3Group3,SWT.PUSH | SWT.CENTER);
add1.setText("Add");
FormData addLData = new FormData();
addLData.width = 45;
addLData.height = 21;
addLData.left = new FormAttachment(0, 1000, 7);
addLData.top = new FormAttachment(0, 1000, 254);
add1.setLayoutData(addLData);
add1.setToolTipText("add new User ");
add1.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent evt) {
tab3group5.setVisible(true);
}
});
}
{
UserTable = new Table(tab3Group3,SWT.SINGLE|SWT.FULL_SELECTION);
FormData UserTableLData = new FormData();
UserTableLData.width = 467;
UserTableLData.height = 224;
UserTableLData.left = new FormAttachment(11, 1000, 0);
UserTableLData.right = new FormAttachment(988, 1000, 0);
UserTableLData.top = new FormAttachment(19, 1000, 0);
UserTableLData.bottom = new FormAttachment(864, 1000, 0);
UserTable.setLayoutData(UserTableLData);
UserTable.setHeaderVisible(true);
UserTable.setToolTipText("registrated User");
UserTable.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent evt) {
userTableId.setText(UserTable.getSelection()[0].getText(0));
username.setText(UserTable.getSelection()[0].getText(1));
passwd.setText(UserTable.getSelection()[0].getText(2));
userTableName.setText(UserTable.getSelection()[0].getText(3));
adminCombo.setText(UserTable.getSelection()[0].getText(4));
tab3group4.setVisible(true);
}
});
{
TableColumn id = new TableColumn(UserTable,SWT.BEGINNING);
id.setText("ID");
id.setWidth(45);
id.setMoveable(true);
id.addListener(SWT.Selection, new SortListener(this,UserTable,0,5));
TableColumn userName = new TableColumn(UserTable,SWT.BEGINNING);
userName.setMoveable(true);
userName.setText("Username");
userName.setWidth(120);
userName.addListener(SWT.Selection, new SortListener(this,UserTable,1,5));
TableColumn passwd = new TableColumn(UserTable,SWT.BEGINNING);
passwd.setMoveable(true);
passwd.setText("Password");
passwd.setWidth(120);
passwd.addListener(SWT.Selection, new SortListener(this,UserTable,2,5));
TableColumn name = new TableColumn(UserTable,SWT.BEGINNING);
name.setMoveable(true);
name.setText("Name");
name.setWidth(130);
name.addListener(SWT.Selection, new SortListener(this,UserTable,3,5));
TableColumn admin = new TableColumn(UserTable,SWT.BEGINNING);
admin.setMoveable(true);
admin.setText("Admin");
admin.setWidth(74);
admin.addListener(SWT.Selection, new SortListener(this,UserTable,4,5));
//TableColumn huhu=new TableColumn(UserTable,SWT.BEGINNING);
//huhu.dispose();
ArrayList resultList = model.getUser();
for (int i = 0; i < resultList.size(); i++) {
TableItem item;
YalpUser result = resultList.get(i);
item = new TableItem(UserTable,SWT.NONE);
item.setText(0,new Integer(result.id).toString());
item.setText(1,result.name);
//item.setText(2,result.passwd);
item.setText(3,result.realName);
item.setText(4,model.accessRightsName(result.level));
}
}
}
}
{
tab3group4 = new Group(container3,SWT.NONE);
FormLayout tab3group4Layout = new FormLayout();
tab3group4.setLayout(tab3group4Layout);
tab3group4.setText("Edit User");
GridData tab3group4LData = new GridData();
tab3group4LData.widthHint = 256;
tab3group4LData.heightHint = 284;
tab3group4.setLayoutData(tab3group4LData);
tab3group4.setVisible(false);
{
save = new Button(tab3group4,SWT.PUSH | SWT.CENTER);
save.setText("save");
FormData saveLData = new FormData();
saveLData.width = 45;
saveLData.height = 21;
saveLData.left = new FormAttachment(0, 1000, 42);
saveLData.top = new FormAttachment(0, 1000, 157);
save.setLayoutData(saveLData);
save.setToolTipText("save Changes");
save.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent evt) {
YalpUser toChange = new YalpUser();
toChange.id = new Integer(userTableId.getText()).intValue();
toChange.name = username.getText();
model.changeUser(toChange, passwd.getText(), Action.EDIT);
while(UserTable.getItemCount()!=0){
UserTable.remove(0);
}
ArrayList resultList = model.getUser();
for (int i = 0; i < resultList.size(); i++) {
TableItem item;
YalpUser result = resultList.get(i);
item = new TableItem(UserTable,SWT.NONE);
item.setText(0,new Integer(result.id).toString());
item.setText(1,result.name);
//item.setText(2,result.passwd);
item.setText(3,result.realName);
item.setText(4,model.accessRightsName(result.level));
}
tab3group4.setVisible(false);
}
});
}
{
userTableName = new Text(tab3group4,SWT.NONE);
FormData text2LData = new FormData();
text2LData.width = 94;
text2LData.height = 14;
text2LData.left = new FormAttachment(0, 1000, 117);
text2LData.top = new FormAttachment(0, 1000, 112);
userTableName .setLayoutData(text2LData);
}
{
passwd = new Text(tab3group4,SWT.NONE);
FormData passwdLData = new FormData();
passwdLData.width = 94;
passwdLData.height = 14;
passwdLData.left = new FormAttachment(0, 1000, 117);
passwdLData.top = new FormAttachment(0, 1000, 92);
passwd.setLayoutData(passwdLData);
}
{
username = new Text(tab3group4,SWT.NONE);
FormData usernameLData = new FormData();
usernameLData.width = 94;
usernameLData.height = 14;
usernameLData.left = new FormAttachment(0, 1000, 117);
usernameLData.top = new FormAttachment(0, 1000, 72);
username.setLayoutData(usernameLData);
}
{
userTableId = new Text(tab3group4,SWT.NONE);
FormData text1LData = new FormData();
text1LData.width = 94;
text1LData.height = 14;
text1LData.left = new FormAttachment(0, 1000, 117);
text1LData.top = new FormAttachment(0, 1000, 52);
userTableId.setLayoutData(text1LData);
userTableId.setEditable(false);
}
{
adminLabel = new CLabel(tab3group4,SWT.NONE);
adminLabel.setText("Admin:");
FormData adminLabelLData = new FormData();
adminLabelLData.width = 42;
adminLabelLData.height = 21;
adminLabelLData.left = new FormAttachment(0, 1000, 27);
adminLabelLData.top = new FormAttachment(0, 1000, 127);
adminLabel.setLayoutData(adminLabelLData);
}
{
idLable = new CLabel(tab3group4,SWT.NONE);
idLable.setText("Id:");
FormData idLableLData = new FormData();
idLableLData.width = 20;
idLableLData.height = 21;
idLableLData.left = new FormAttachment(107, 1000, 0);
idLableLData.right = new FormAttachment(185, 1000, 0);
idLableLData.top = new FormAttachment(167, 1000, 0);
idLableLData.bottom = new FormAttachment(241, 1000, 0);
idLable.setLayoutData(idLableLData);
}
{
usernameLable = new CLabel(tab3group4,SWT.NONE);
usernameLable.setText("Username:");
FormData usernameLableLData = new FormData();
usernameLableLData.width = 58;
usernameLableLData.height = 21;
usernameLableLData.left = new FormAttachment(107, 1000, 0);
usernameLableLData.right = new FormAttachment(333, 1000, 0);
usernameLableLData.top = new FormAttachment(237, 1000, 0);
usernameLableLData.bottom = new FormAttachment(311, 1000, 0);
usernameLable.setLayoutData(usernameLableLData);
}
{
passwdLable = new CLabel(tab3group4,SWT.NONE);
passwdLable.setText("Password:");
FormData passwdLableLData = new FormData();
passwdLableLData.width = 56;
passwdLableLData.height = 21;
passwdLableLData.left = new FormAttachment(107, 1000, 0);
passwdLableLData.right = new FormAttachment(326, 1000, 0);
passwdLableLData.top = new FormAttachment(308, 1000, 0);
passwdLableLData.bottom = new FormAttachment(382, 1000, 0);
passwdLable.setLayoutData(passwdLableLData);
}
{
nameLable = new CLabel(tab3group4,SWT.NONE);
nameLable.setText("Name:");
FormData nameLableLData = new FormData();
nameLableLData.width = 37;
nameLableLData.height = 21;
nameLableLData.left = new FormAttachment(107, 1000, 0);
nameLableLData.right = new FormAttachment(251, 1000, 0);
nameLableLData.top = new FormAttachment(378, 1000, 0);
nameLableLData.bottom = new FormAttachment(452, 1000, 0);
nameLable.setLayoutData(nameLableLData);
}
{
adminCombo = new CCombo(tab3group4,SWT.NONE);
FormData adminComboLData = new FormData();
adminComboLData.width = 81;
adminComboLData.height = 16;
adminComboLData.left = new FormAttachment(458, 1000, 0);
adminComboLData.right = new FormAttachment(849, 1000, 0);
adminComboLData.top = new FormAttachment(466, 1000, 0);
adminComboLData.bottom = new FormAttachment(522, 1000, 0);
adminCombo.setLayoutData(adminComboLData);
{
adminCombo.add("true");
adminCombo.add("false");
}
}
}
tab3group5 = new Group(container3,SWT.NONE);
FormLayout tab3group5Layout = new FormLayout();
tab3group5.setLayout(tab3group5Layout);
GridData tab3group5LData = new GridData();
tab3group5LData.widthHint = 500;
tab3group5LData.heightHint = 99;
tab3group5.setLayoutData(tab3group5LData);
tab3group5.setText("Add User");
tab3group5.setVisible(false);
{
submitButton = new Button(tab3group5,SWT.PUSH | SWT.CENTER);
submitButton.setText("Submit");
FormData submitButtonLData = new FormData();
submitButtonLData.width = 50;
submitButtonLData.height = 21;
submitButtonLData.left = new FormAttachment(0, 1000, 382);
submitButtonLData.top = new FormAttachment(0, 1000, 52);
submitButton.setLayoutData(submitButtonLData);
submitButton.setToolTipText("add User");
submitButton.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent evt) {
System.out.println("submit");
YalpUser toChange = new YalpUser();
toChange.id = 100;
toChange.name = usernameAdd.getText();
toChange.realName = realnameAdd.getText();
model.changeUser(toChange, passwdAdd.getText(), Action.CREATE);
while(UserTable.getItemCount()!=0){
UserTable.remove(0);
}
ArrayList resultList = model.getUser();
for (int i = 0; i < resultList.size(); i++) {
TableItem item;
YalpUser result = resultList.get(i);
item = new TableItem(UserTable,SWT.NONE);
item.setText(0,new Integer(result.id).toString());
item.setText(1,result.name);
//item.setText(2,result.passwd);
item.setText(3,result.realName);
item.setText(4,model.accessRightsName(result.level));
}
}
});
}
{
adminAddLabel = new CLabel(tab3group5,SWT.NONE);
adminAddLabel.setText("Admin:");
FormData adminAddLabelLData = new FormData();
adminAddLabelLData.width = 40;
adminAddLabelLData.height = 21;
adminAddLabelLData.left = new FormAttachment(0, 1000, 291);
adminAddLabelLData.top = new FormAttachment(0, 1000, 17);
adminAddLabel.setLayoutData(adminAddLabelLData);
}
{
passwdAddLable = new CLabel(tab3group5,SWT.NONE);
passwdAddLable.setText("Password:");
FormData passwdAddLableLData = new FormData();
passwdAddLableLData.width = 60;
passwdAddLableLData.height = 21;
passwdAddLableLData.left = new FormAttachment(0, 1000, 17);
passwdAddLableLData.top = new FormAttachment(0, 1000, 57);
passwdAddLable.setLayoutData(passwdAddLableLData);
}
{
usernameAddLable = new CLabel(tab3group5,SWT.NONE);
usernameAddLable.setText("Username:");
FormData usernameAddLableLData = new FormData();
usernameAddLableLData.width = 60;
usernameAddLableLData.height = 21;
usernameAddLableLData.left = new FormAttachment(0, 1000, 17);
usernameAddLableLData.top = new FormAttachment(0, 1000, 37);
usernameAddLable.setLayoutData(usernameAddLableLData);
}
{
realnameAddLabel = new CLabel(tab3group5,SWT.NONE);
realnameAddLabel.setText("Name:");
FormData realnameAddLabelLData = new FormData();
realnameAddLabelLData.width = 60;
realnameAddLabelLData.height = 21;
realnameAddLabelLData.left = new FormAttachment(0, 1000, 17);
realnameAddLabelLData.top = new FormAttachment(0, 1000, 17);
realnameAddLabel.setLayoutData(realnameAddLabelLData);
}
{
adminAdd = new CCombo(tab3group5,SWT.NONE);
FormData adminAddLData = new FormData();
adminAddLData.width = 65;
adminAddLData.height = 12;
adminAddLData.left = new FormAttachment(0, 1000, 347);
adminAddLData.top = new FormAttachment(0, 1000, 22);
adminAdd.setLayoutData(adminAddLData);
adminAdd.setText("false");
{
adminAdd.add("false");
adminAdd.add("true");
}
}
{
realnameAdd = new Text(tab3group5,SWT.NONE);
FormData realnameAddLData = new FormData();
realnameAddLData.width = 174;
realnameAddLData.height = 14;
realnameAddLData.left = new FormAttachment(0, 1000, 82);
realnameAddLData.top = new FormAttachment(0, 1000, 22);
realnameAdd.setLayoutData(realnameAddLData);
}
{
usernameAdd = new Text(tab3group5,SWT.NONE);
FormData usernameAddLData = new FormData();
usernameAddLData.width = 174;
usernameAddLData.height = 13;
usernameAddLData.left = new FormAttachment(165, 1000, 0);
usernameAddLData.right = new FormAttachment(525, 1000, 0);
usernameAddLData.top = new FormAttachment(429, 1000, 0);
usernameAddLData.bottom = new FormAttachment(560, 1000, 0);
usernameAdd.setLayoutData(usernameAddLData);
}
{
FormData PasswdAddLData = new FormData();
PasswdAddLData.width = 174;
PasswdAddLData.height = 13;
PasswdAddLData.left = new FormAttachment(165, 1000, 0);
PasswdAddLData.right = new FormAttachment(525, 1000, 0);
PasswdAddLData.top = new FormAttachment(631, 1000, 0);
PasswdAddLData.bottom = new FormAttachment(762, 1000, 0);
passwdAdd = new Text(tab3group5,SWT.NONE);
passwdAdd.setLayoutData(PasswdAddLData);
}
}
}
cTabFolder1.setSelection(0);
}
else{
GridData testLData = new GridData();
testLData.widthHint = 792;
testLData.heightHint = 590;
Composite simpelUser = new Composite(this, SWT.NONE);
RowLayout testLayout = new RowLayout(org.eclipse.swt.SWT.HORIZONTAL);
simpelUser.setLayout(testLayout);
simpelUser.setLayoutData(testLData);
{
topComposite = new Composite(simpelUser,SWT.NONE);
GridLayout topCompositeLayout = new GridLayout();
topCompositeLayout.makeColumnsEqualWidth = true;
topCompositeLayout.numColumns = 2;
topCompositeLayout.verticalSpacing = 2;
topCompositeLayout.horizontalSpacing = 5;
topComposite.setLayout(topCompositeLayout);
RowData topCompositeLData = new RowData();
topCompositeLData.width = 783;
topCompositeLData.height = 566;
topComposite.setLayoutData(topCompositeLData);
{
find = new Group(topComposite,SWT.NONE);
this.find(find,resultComposite,playlistComposite,bottemComposite,1);
}
{
logo = new Group(topComposite,SWT.NONE);
this.logo(logo);
}
{
resultComposite = new Composite(topComposite,SWT.NONE);
resultTable1 = new Table(resultComposite,SWT.MULTI|SWT.FULL_SELECTION);
resultTable1.setToolTipText("Medias");
resultTable1.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent evt) {
add2.setEnabled(true);
}
});
this.resultTable(resultComposite,resultTable1,1);
}
{
playlistComposite = new Composite(topComposite,SWT.NONE);
FormLayout playlistCompositeLayout = new FormLayout();
playlistComposite.setLayout(playlistCompositeLayout);
GridData playlistCompositeLData = new GridData();
playlistCompositeLData.heightHint = 390;
playlistCompositeLData.horizontalAlignment = GridData.FILL;
playlistComposite.setLayoutData(playlistCompositeLData);
playlistComposite.setVisible(false);
playlistComposite.setSize(238, 390);
{
next = new Button(playlistComposite,SWT.PUSH | SWT.CENTER);
FormData nextLData = new FormData();
nextLData.width = 45;
nextLData.height = 21;
nextLData.left = new FormAttachment(0, 1000, 185);
nextLData.top = new FormAttachment(0, 1000, 365);
next.setLayoutData(nextLData);
next.setEnabled(false);
next.setFont(SWTResourceManager.getFont("Times", 8, 1, false, false));
next.setToolTipText("play next Title");
next.setImage(forwardImage);
next.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent evt) {
model.next();
}
});
}
{
stop = new Button(playlistComposite,SWT.PUSH | SWT.CENTER);
FormData stopLData = new FormData();
stopLData.width = 35;
stopLData.height = 21;
stopLData.left = new FormAttachment(0, 1000, 91);
stopLData.top = new FormAttachment(0, 1000, 365);
stop.setLayoutData(stopLData);
stop.setImage(new Image(this.getDisplay(),"img/stop.gif"));
stop.setEnabled(false);
stop.setToolTipText("stop");
stop.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent evt) {
if (model.stop()){
play.setEnabled(true);
next.setEnabled(false);
stop.setEnabled(false);
play.setImage(playImage);
play.setToolTipText("play");
isNotPlaying=true;
}
}
});
}
{
play = new Button(playlistComposite,SWT.PUSH | SWT.CENTER);
FormData playLData = new FormData();
playLData.width = 35;
playLData.height = 21;
playLData.left = new FormAttachment(0, 1000, 50);
playLData.top = new FormAttachment(0, 1000, 365);
play.setLayoutData(playLData);
play.setImage(playImage);
play.setEnabled(false);
play.setToolTipText("play");
play.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent evt) {
stop.setEnabled(true);
if (playlistTable.getItemCount()>1)next.setEnabled(true);
del.setEnabled(false);
//add2.setEnabled(false);
if (isNotPlaying){
play.setCursor(SWTResourceManager.getCursor(SWT.CURSOR_WAIT));
if(model.play()){
play.setImage(pauseImage);
play.setToolTipText("pause");
play.setCursor(SWTResourceManager.getCursor(SWT.NONE));
isNotPlaying= false;
}else;
}else{
if(model.pause()){
if (paused){
play.setImage(playImage);
play.setToolTipText("play");
paused=false;
}else{
play.setImage(pauseImage);
play.setToolTipText("pause");
paused=true;
}
}else;
}
}
});
}
{
add2 = new Button(playlistComposite,SWT.PUSH | SWT.CENTER);
FormData addLData = new FormData();
addLData.width = 25;
addLData.height = 21;
addLData.left = new FormAttachment(0, 1000, 2);
addLData.top = new FormAttachment(0, 1000, 160);
add2.setLayoutData(addLData);
add2.setText(">>");
add2.setEnabled(false);
add2.setToolTipText("add to Playlist");
add2.setFont(SWTResourceManager.getFont("Times", 8, 1, false, false));
add2.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent evt) {
if (System.getProperty("os.name")== "Mac OS X"){
for (int i=resultTable1.getSelectionCount()-1;i>=0;i--){
int id=new Integer(resultTable1.getSelection()[i].getText(0)).intValue();
System.out.println(resultTable1.getSelection()[i].getText(1));
model.add2PlayList(id);
}
}else{
for (int i=0;i playlist=model.getToPlaylist();
for(int i=0;i1&& !isNotPlaying)next.setEnabled(true);
}
});
}
{
del = new Button(playlistComposite,SWT.PUSH | SWT.CENTER);
FormData delLData = new FormData();
delLData.width = 25;
delLData.height = 21;
delLData.left = new FormAttachment(0, 1000, 2);
delLData.top = new FormAttachment(0, 1000, 200);
del.setLayoutData(delLData);
del.setEnabled(false);
del.setToolTipText("del from Playlist");
del.setText("<<");
del.setFont(SWTResourceManager.getFont("Times", 8, 1, false, false));
del.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent evt) {
for (int i=playlistTable.getSelectionCount()-1;i>=0;i--){
int pos = playlistTable.getSelectionIndices()[i];
model.removeFromPlayList(pos);
}
del.setEnabled(false);
while(playlistTable.getItemCount()!=0){
playlistTable.remove(0);
}
ArrayList playlist=model.getToPlaylist();
for(int i=0;i types = new ArrayList();
if( videoCheckBox.getSelection() )
types.add(MediaType.VIDEO);
if( audioCheckBox.getSelection() )
types.add(MediaType.SOUND);
/* t.b.d. add IMAGE support */
if (tab==1){
while(resultTable1.getItemCount()!=0){
resultTable1.remove(0);
}
}else{
while(resultTable2.getItemCount()!=0){
resultTable2.remove(0);
}
}
returnVal= model.search(search, types, tab);
ArrayListresultList = model.getMedia(tab);
for( int i = 0;
(resultList != null) && (i < resultList.size());
i++ )
{
TableItem item;
Media result=resultList.get(i);
if (tab==1) item=new TableItem(resultTable1,SWT.NONE);
else item= new TableItem(resultTable2,SWT.NONE);
item.setText(0,new Integer(result.id).toString());
item.setText(1,result.name);
/* t.b.d. add string_props support
if(result.author != null)
item.setText(2,result.author);
if(result.album != null)
item.setText(3,result.album);
if(result.year != null)
item.setText(4,result.year);
if(result.category != null)
item.setText(5,result.category);
*/
if(result.type != null)
item.setText(6,model.getTypeName(result.type));
}
if (tab==1){
if (returnVal==1)returnNum.setText(returnVal+" Media");
else returnNum.setText(returnVal+" Medias");
resultComposite.setVisible(true);
playlistComposite.setVisible(true);
//bottemComposite.setVisible(true);
}
if (tab==2){
if (returnVal==1)returnNum.setText(returnVal+" Media");
else returnNum.setText(returnVal+" Medias");
composite1.setVisible(true);
}
}
private void deleteButtonWidgetSelected(SelectionEvent evt) {
try{
for (int i=resultTable2.getSelectionCount()-1;i>=0;i--){
Media result = model.getMediaWithId(
new Integer(resultTable2.getSelection()[i].getText(0)).intValue(),2 );
changeComposite.setVisible(false);
deleteButton.setVisible(false);
model.changeMedia(result, Action.DELETE);
resultTable2.remove(resultTable2.getSelectionIndices()[i]);
}
}catch (Exception e){
System.out.println("Exception in DeleteButton "+e);
}
}
private void addButtonWidgetSelected(SelectionEvent evt) {
System.out.println("browser not implemented in yalp v2");
}
public void refillIpTable(){
/* t.b.d. replace by session viewer
try{
ArrayList list=model.srvCon.getClientInfo();
while(iptable.getItemCount()!=0){
iptable.remove(0);
}
for(ClientInfo info : list){
TableItem item = new TableItem(iptable,SWT.NONE);
item.setText(0,info.getUserName());
item.setText(1,info.getIp());
}
}catch(Exception e){System.out.println("geht nicht "+e);}
*/
}
public void show(){
((Shell)this.parent).setImage(new Image(display,"img/yalpV2_klein.gif"));
((Shell)this.parent).setText("yalp");
this.parent.addListener(SWT.Dispose,new org.eclipse.swt.widgets.Listener(){
public void handleEvent(org.eclipse.swt.widgets.Event e) {
ShellClose();
}
});
Point size = this.getSize();
java.awt.Dimension screen = java.awt.Toolkit.getDefaultToolkit().getScreenSize();
Rectangle shellBounds = this.parent.computeTrim((screen.width-size.x)/2,(screen.height-size.y)/2,size.x,size.y);
this.parent.setLayout(new FillLayout());
this.parent.layout();
this.parent.setBounds(shellBounds);
((Shell)this.parent).open();
while (!this.parent.isDisposed()) {
if (!display.readAndDispatch())
display.sleep();
}
}
public void ShellClose(){
this.model.logoff();
System.exit(0);
}
}