diff options
| author | unknown <Administrator@.(none)> | 2009-12-29 18:25:47 +0100 |
|---|---|---|
| committer | unknown <Administrator@.(none)> | 2009-12-29 18:25:47 +0100 |
| commit | fee6fe4d468c2e7fcc3403b9f3b8412b8d4e2dbd (patch) | |
| tree | 26baa66a010aa459f3c8ba530d57af6e633e3b89 /src/YalpClients/SwtClient | |
| parent | bec20df70966484d7592ea80a17c7decc1bdd81e (diff) | |
added windows start scripts
Signed-off-by: unknown <Administrator@.(none)>
Diffstat (limited to 'src/YalpClients/SwtClient')
| -rw-r--r-- | src/YalpClients/SwtClient/GUI/GUI.java | 4208 | ||||
| -rw-r--r-- | src/YalpClients/SwtClient/GUI/InitGUI.java | 116 | ||||
| -rw-r--r-- | src/YalpClients/SwtClient/GUI/LoadDialog.java | 220 | ||||
| -rw-r--r-- | src/YalpClients/SwtClient/GUI/SWTResourceManager.java | 290 | ||||
| -rw-r--r-- | src/YalpClients/SwtClient/GUI/SortListener.java | 126 | ||||
| -rw-r--r-- | src/YalpClients/SwtClient/GUI/StartDialog.java | 472 | ||||
| -rwxr-xr-x | src/YalpClients/SwtClient/Model.java | 1518 | ||||
| -rwxr-xr-x | src/YalpClients/SwtClient/SwtClient.java | 122 |
8 files changed, 3536 insertions, 3536 deletions
diff --git a/src/YalpClients/SwtClient/GUI/GUI.java b/src/YalpClients/SwtClient/GUI/GUI.java index ab9db71..475f09b 100644 --- a/src/YalpClients/SwtClient/GUI/GUI.java +++ b/src/YalpClients/SwtClient/GUI/GUI.java @@ -1,2104 +1,2104 @@ -/* - * 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 - * - * <em></em> - * - * @author Volker Dahnke / Manuel Traut - * - * @version 1 02-04-2006<br> - * - */ -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<resultTable1.getSelectionCount();i++){ - int id=new Integer(resultTable1.getSelection()[i].getText(0)).intValue(); - System.out.println(resultTable1.getSelection()[i].getText(1)); - model.add2PlayList(id); - } - } - while(playlistTable.getItemCount()!=0){ - playlistTable.remove(0); - } - ArrayList<Media> playlist=model.getToPlaylist(); - for(int i=0;i<playlist.size();i++){ - Media result=playlist.get(i); - TableItem item = new TableItem(playlistTable,SWT.NONE); - item.setText(0,result.name); - item.setText(1,result.duration); - } - play.setEnabled(true); - if (playlistTable.getItemCount()>1&& !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<Media> playlist=model.getToPlaylist(); - for(int i=0;i<playlist.size();i++){ - Media result=playlist.get(i); - TableItem item = new TableItem(playlistTable,SWT.NONE); - item.setText(0,result.name); - item.setText(1,result.duration); - } - if (playlistTable.getItemCount()==0)play.setEnabled(false); - } - }); - } - { - playlistTable = new Table(playlistComposite,SWT.MULTI|SWT.FULL_SELECTION); - playlistTable.setHeaderVisible(true); - FormData playlistTableLData = new FormData(); - playlistTableLData.width = 184; - playlistTableLData.height = 330; - playlistTableLData.top = new FormAttachment(24, 1000, 0); - playlistTableLData.left = new FormAttachment(0, 1000, 38); - playlistTable.setLayoutData(playlistTableLData); - playlistTable.setToolTipText("Playlist"); - playlistTable.addSelectionListener(new SelectionAdapter() { - public void widgetSelected(SelectionEvent evt) { - if (isNotPlaying)del.setEnabled(true); - } - }); - TableColumn title = new TableColumn(playlistTable,SWT.LEFT); - title.setText("Title"); - title.setWidth(120); - title.setMoveable(true); - TableColumn duration = new TableColumn(playlistTable,SWT.RIGHT); - duration.setText("Duration"); - duration.setWidth(80); - duration.setMoveable(true); - } - } - } - /*{ - bottemComposite = new Composite(container1,SWT.NONE); - bottemComposite.setVisible(false); - GridLayout bottemCompositeLayout = new GridLayout(); - bottemCompositeLayout.makeColumnsEqualWidth = true; - bottemCompositeLayout.verticalSpacing = 2; - bottemCompositeLayout.horizontalSpacing = 5; - bottemComposite.setLayout(bottemCompositeLayout); - RowData bottemCompositeLData = new RowData(); - bottemCompositeLData.width = 777; - bottemCompositeLData.height = 68; - bottemComposite.setLayoutData(bottemCompositeLData); - { - styledText1 = new StyledText(bottemComposite,SWT.NONE); - GridData styledText1LData = new GridData(); - styledText1LData.widthHint = 765; - styledText1LData.heightHint = 55; - styledText1.setLayoutData(styledText1LData); - styledText1.setText("styledText1"); - styledText1.setSize(765, 55); - } - }*/ - } - } - { - tab2 = new CTabItem(cTabFolder1,SWT.NONE); - tab2.setText("Change"); - { - container2 = new Composite(cTabFolder1,SWT.NONE); - GridLayout container2Layout = new GridLayout(); - container2Layout.makeColumnsEqualWidth = true; - container2.setLayout(container2Layout); - tab2.setControl(container2); - container2.setVisible(false); - { - composite2 = new Composite(container2,SWT.NONE); - GridLayout composite2Layout = new GridLayout(); - composite2Layout.makeColumnsEqualWidth = true; - composite2Layout.numColumns=2; - composite2.setLayout(composite2Layout); - GridData composite2LData = new GridData(); - composite2LData.widthHint = 780; - composite2LData.heightHint = 497; - composite2.setLayoutData(composite2LData); - { - group1 = new Group(composite2,SWT.NONE); - this.find(group1,group2,composite1,changeComposite,2); - } - { - group2 = new Group(composite2,SWT.NONE); - this.logo(group2); - } - { - composite1 = new Composite(composite2,SWT.NONE); - { - resultTable2 = new Table(composite1,SWT.MULTI|SWT.FULL_SELECTION); - resultTable2.setToolTipText("Medias"); - resultTable2.addSelectionListener(new SelectionAdapter() { - public void widgetSelected(SelectionEvent evt) { - if(resultTable2.getSelectionCount()<2){ - int identity =new Integer(resultTable2.getSelection()[0].getText()).intValue(); - Media result = model.getMediaWithId(identity,2); - if (result!=null){ - id.setText(new Integer(result.id).toString()); - title.setText(result.name); - /* t.b.d. parse from string props - author.setText(result.author); - album.setText(result.album); - category.setText(result.category); - year.setText(result.year); - */ - duration.setText(result.duration); - /* - aBitrate.setText(new Integer(result.aBitrate).toString()); - vBitrate.setText(new Integer(result.vBitrate).toString()); - resolution.setText(result.resolution); - */ - ownerId.setText(result.owner.name); - lastEdit.setText(result.lastEdit); - path.setText(result.path); - name.setText(result.name); - String _type = model.getTypeName(result.type); - type.setText(_type); - changeComposite.setVisible(true); - deleteButton.setVisible(true); - } - }else changeComposite.setVisible(false); - } - }); - this.resultTable(composite1,resultTable2,2); - } - } - { - changeComposite = new Composite(composite2,SWT.NONE); - FormLayout changeCompositeLayout = new FormLayout(); - changeComposite.setLayout(changeCompositeLayout); - GridData changeCompositeLData = new GridData(); - changeCompositeLData.widthHint = 238; - changeCompositeLData.heightHint = 357; - changeCompositeLData.verticalAlignment = GridData.BEGINNING; - changeComposite.setLayoutData(changeCompositeLData); - changeComposite.setVisible(false); - { - saveButton = new Button(changeComposite,SWT.PUSH | SWT.CENTER); - saveButton.setText("Save"); - FormData saveButtonLData = new FormData(); - saveButtonLData.width = 40; - saveButtonLData.height = 21; - saveButtonLData.left = new FormAttachment(0, 1000, 30); - saveButtonLData.top = new FormAttachment(0, 1000, 315); - saveButton.setLayoutData(saveButtonLData); - saveButton.setToolTipText("save Changes"); - saveButton.addSelectionListener(new SelectionAdapter() { - public void widgetSelected(SelectionEvent evt) { - saveButtonWidgetSelected(evt); - } - }); - } - { - id = new Text(changeComposite,SWT.NONE); - FormData idLData = new FormData(); - idLData.width = 124; - idLData.height = 14; - idLData.left = new FormAttachment(0, 1000, 100); - idLData.top = new FormAttachment(0, 1000, 10); - id.setLayoutData(idLData); - id.setEditable(false); - } - { - idLabel = new CLabel(changeComposite,SWT.NONE); - idLabel.setText("Id:"); - FormData idLabelLData = new FormData(); - idLabelLData.width = 60; - idLabelLData.height = 21; - idLabelLData.left = new FormAttachment(0, 1000, 20); - idLabelLData.top = new FormAttachment(0, 1000, 5); - idLabel.setLayoutData(idLabelLData); - } - { - cLabel1 = new CLabel(changeComposite,SWT.NONE); - cLabel1.setText("Type:"); - FormData cLabel1LData = new FormData(); - cLabel1LData.width = 60; - cLabel1LData.height = 21; - cLabel1LData.left = new FormAttachment(0, 1000, 20); - cLabel1LData.top = new FormAttachment(0, 1000, 285); - cLabel1.setLayoutData(cLabel1LData); - } - { - nameLabel = new CLabel(changeComposite,SWT.NONE); - nameLabel.setText("Name:"); - FormData nameLabelLData = new FormData(); - nameLabelLData.width = 60; - nameLabelLData.height = 21; - nameLabelLData.left = new FormAttachment(0, 1000, 20); - nameLabelLData.top = new FormAttachment(0, 1000, 265); - nameLabel.setLayoutData(nameLabelLData); - } - { - pathLabel = new CLabel(changeComposite,SWT.NONE); - pathLabel.setText("Path:"); - FormData pathLabelLData = new FormData(); - pathLabelLData.width = 60; - pathLabelLData.height = 21; - pathLabelLData.left = new FormAttachment(0, 1000, 20); - pathLabelLData.top = new FormAttachment(0, 1000, 245); - pathLabel.setLayoutData(pathLabelLData); - } - { - lastEditLable = new CLabel(changeComposite,SWT.NONE); - lastEditLable.setText("Last Edit:"); - FormData lastEditLableLData = new FormData(); - lastEditLableLData.width = 60; - lastEditLableLData.height = 21; - lastEditLableLData.left = new FormAttachment(0, 1000, 20); - lastEditLableLData.top = new FormAttachment(0, 1000, 225); - lastEditLable.setLayoutData(lastEditLableLData); - } - { - ownerIdLabel = new CLabel(changeComposite,SWT.NONE); - ownerIdLabel.setText("Owner:"); - FormData ownerIdLabelLData = new FormData(); - ownerIdLabelLData.width = 60; - ownerIdLabelLData.height = 21; - ownerIdLabelLData.left = new FormAttachment(0, 1000, 20); - ownerIdLabelLData.top = new FormAttachment(0, 1000, 205); - ownerIdLabel.setLayoutData(ownerIdLabelLData); - } - { - resolutionLabel = new CLabel(changeComposite,SWT.NONE); - resolutionLabel.setText("Resolution:"); - FormData resolutionLabelLData = new FormData(); - resolutionLabelLData.width = 60; - resolutionLabelLData.height = 21; - resolutionLabelLData.left = new FormAttachment(0, 1000, 20); - resolutionLabelLData.top = new FormAttachment(0, 1000, 185); - resolutionLabel.setLayoutData(resolutionLabelLData); - } - { - vBitrateLabel = new CLabel(changeComposite,SWT.NONE); - vBitrateLabel.setText("V-Bitrate:"); - FormData vBitrateLabelLData = new FormData(); - vBitrateLabelLData.width = 60; - vBitrateLabelLData.height = 21; - vBitrateLabelLData.left = new FormAttachment(0, 1000, 20); - vBitrateLabelLData.top = new FormAttachment(0, 1000, 165); - vBitrateLabel.setLayoutData(vBitrateLabelLData); - } - { - aBitrateLabel = new CLabel(changeComposite,SWT.NONE); - aBitrateLabel.setText("A-Bitrate:"); - FormData aBitrateLabelLData = new FormData(); - aBitrateLabelLData.width = 60; - aBitrateLabelLData.height = 21; - aBitrateLabelLData.left = new FormAttachment(0, 1000, 20); - aBitrateLabelLData.top = new FormAttachment(0, 1000, 145); - aBitrateLabel.setLayoutData(aBitrateLabelLData); - } - { - durationLabel = new CLabel(changeComposite,SWT.NONE); - durationLabel.setText("Duration:"); - FormData durationLabelLData = new FormData(); - durationLabelLData.width = 60; - durationLabelLData.height = 21; - durationLabelLData.left = new FormAttachment(0, 1000, 20); - durationLabelLData.top = new FormAttachment(0, 1000, 125); - durationLabel.setLayoutData(durationLabelLData); - } - { - yearLabel = new CLabel(changeComposite,SWT.NONE); - yearLabel.setText("Year:"); - FormData yearLabelLData = new FormData(); - yearLabelLData.width = 60; - yearLabelLData.height = 21; - yearLabelLData.left = new FormAttachment(0, 1000, 20); - yearLabelLData.top = new FormAttachment(0, 1000, 105); - yearLabel.setLayoutData(yearLabelLData); - } - { - categoryLabel = new CLabel(changeComposite,SWT.NONE); - categoryLabel.setText("Category:"); - FormData categoryLabelLData = new FormData(); - categoryLabelLData.width = 60; - categoryLabelLData.height = 21; - categoryLabelLData.left = new FormAttachment(0, 1000, 20); - categoryLabelLData.top = new FormAttachment(0, 1000, 85); - categoryLabel.setLayoutData(categoryLabelLData); - } - { - albumLabel = new CLabel(changeComposite,SWT.NONE); - albumLabel.setText("Album"); - FormData albumLabelLData = new FormData(); - albumLabelLData.width = 60; - albumLabelLData.height = 21; - albumLabelLData.left = new FormAttachment(0, 1000, 20); - albumLabelLData.top = new FormAttachment(0, 1000, 65); - albumLabel.setLayoutData(albumLabelLData); - } - { - authorLabel = new CLabel(changeComposite,SWT.NONE); - authorLabel.setText("Author:"); - FormData authorLabelLData = new FormData(); - authorLabelLData.width = 60; - authorLabelLData.height = 21; - authorLabelLData.left = new FormAttachment(0, 1000, 20); - authorLabelLData.top = new FormAttachment(0, 1000, 45); - authorLabel.setLayoutData(authorLabelLData); - } - { - titleLabel = new CLabel(changeComposite,SWT.NONE); - titleLabel.setText("Title:"); - FormData cLabel1LData1 = new FormData(); - cLabel1LData1.width = 60; - cLabel1LData1.height = 21; - cLabel1LData1.left = new FormAttachment(0, 1000, 20); - cLabel1LData1.top = new FormAttachment(0, 1000, 25); - titleLabel.setLayoutData(cLabel1LData1); - } - { - type = new CCombo(changeComposite,SWT.NONE); - FormData typeLData = new FormData(); - typeLData.width = 111; - typeLData.height = 16; - typeLData.left = new FormAttachment(0, 1000, 100); - typeLData.top = new FormAttachment(0, 1000, 290); - type.setLayoutData(typeLData); - type.setCursor(SWTResourceManager.getCursor(SWT.CURSOR_HAND)); - { - type.add("audio"); - type.add("video"); - } - } - { - name = new Text(changeComposite,SWT.NONE); - FormData nameLData = new FormData(); - nameLData.width = 124; - nameLData.height = 14; - nameLData.left = new FormAttachment(0, 1000, 100); - nameLData.top = new FormAttachment(0, 1000, 270); - name.setLayoutData(nameLData); - name.setEditable(false); - } - { - path = new Text(changeComposite,SWT.NONE); - FormData pathLData = new FormData(); - pathLData.width = 124; - pathLData.height = 14; - pathLData.left = new FormAttachment(0, 1000, 100); - pathLData.top = new FormAttachment(0, 1000, 250); - path.setLayoutData(pathLData); - path.setEditable(false); - } - { - lastEdit = new Text(changeComposite,SWT.NONE); - FormData lastEditLData = new FormData(); - lastEditLData.width = 124; - lastEditLData.height = 14; - lastEditLData.left = new FormAttachment(0, 1000, 100); - lastEditLData.top = new FormAttachment(0, 1000, 230); - lastEdit.setLayoutData(lastEditLData); - lastEdit.setEditable(false); - } - { - ownerId = new Text(changeComposite,SWT.NONE); - FormData ownerIdLData = new FormData(); - ownerIdLData.width = 124; - ownerIdLData.height = 14; - ownerIdLData.left = new FormAttachment(0, 1000, 100); - ownerIdLData.top = new FormAttachment(0, 1000, 210); - ownerId.setLayoutData(ownerIdLData); - ownerId.setEditable(false); - } - { - resolution = new Text(changeComposite,SWT.NONE); - FormData resolutionLData = new FormData(); - resolutionLData.width = 124; - resolutionLData.height = 14; - resolutionLData.left = new FormAttachment(0, 1000, 100); - resolutionLData.top = new FormAttachment(0, 1000, 190); - resolution.setLayoutData(resolutionLData); - } - { - vBitrate = new Text(changeComposite,SWT.NONE); - FormData vBitrateLData = new FormData(); - vBitrateLData.width = 124; - vBitrateLData.height = 14; - vBitrateLData.left = new FormAttachment(0, 1000, 100); - vBitrateLData.top = new FormAttachment(0, 1000, 170); - vBitrate.setLayoutData(vBitrateLData); - } - { - aBitrate = new Text(changeComposite,SWT.NONE); - FormData aBitrateLData = new FormData(); - aBitrateLData.width = 124; - aBitrateLData.height = 14; - aBitrateLData.left = new FormAttachment(0, 1000, 100); - aBitrateLData.top = new FormAttachment(0, 1000, 150); - aBitrate.setLayoutData(aBitrateLData); - } - { - duration = new Text(changeComposite,SWT.NONE); - FormData durationLData = new FormData(); - durationLData.width = 124; - durationLData.height = 14; - durationLData.left = new FormAttachment(0, 1000, 100); - durationLData.top = new FormAttachment(0, 1000, 130); - duration.setLayoutData(durationLData); - } - { - year = new Text(changeComposite,SWT.NONE); - FormData yearLData = new FormData(); - yearLData.width = 124; - yearLData.height = 14; - yearLData.left = new FormAttachment(0, 1000, 100); - yearLData.top = new FormAttachment(0, 1000, 110); - year.setLayoutData(yearLData); - } - { - category = new Text(changeComposite,SWT.NONE); - FormData categoryLData = new FormData(); - categoryLData.width = 124; - categoryLData.height = 14; - categoryLData.left = new FormAttachment(0, 1000, 100); - categoryLData.top = new FormAttachment(0, 1000, 90); - category.setLayoutData(categoryLData); - category.setCursor(SWTResourceManager.getCursor(SWT.CURSOR_WAIT)); - } - { - album = new Text(changeComposite,SWT.NONE); - FormData albumLData = new FormData(); - albumLData.width = 124; - albumLData.height = 14; - albumLData.left = new FormAttachment(0, 1000, 100); - albumLData.top = new FormAttachment(0, 1000, 70); - album.setLayoutData(albumLData); - } - { - author = new Text(changeComposite,SWT.NONE); - FormData authorLData = new FormData(); - authorLData.width = 124; - authorLData.height = 14; - authorLData.left = new FormAttachment(0, 1000, 100); - authorLData.top = new FormAttachment(0, 1000, 50); - author.setLayoutData(authorLData); - } - { - title = new Text(changeComposite,SWT.NONE); - FormData titleLData = new FormData(); - titleLData.width = 124; - titleLData.height = 13; - titleLData.top = new FormAttachment(0, 1000, 30); - titleLData.left = new FormAttachment(0, 1000, 100); - title.setLayoutData(titleLData); - } - } - } - { - composite3 = new Composite(container2,SWT.NONE); - FormLayout composite3Layout = new FormLayout(); - composite3.setLayout(composite3Layout); - GridData composite3LData = new GridData(); - composite3LData.widthHint = 777; - composite3LData.heightHint = 58; - composite3.setLayoutData(composite3LData); - { - deleteButton = new Button(composite3,SWT.PUSH | SWT.CENTER); - deleteButton.setText("Delete"); - deleteButton.setVisible(false); - FormData deleteButtonLData = new FormData(); - deleteButtonLData.width = 150; - deleteButtonLData.height = 30; - deleteButtonLData.left = new FormAttachment(0, 1000, 470); - deleteButtonLData.top = new FormAttachment(0, 1000, 15); - deleteButton.setLayoutData(deleteButtonLData); - deleteButton.setToolTipText("delete File from Database"); - deleteButton.addSelectionListener(new SelectionAdapter() { - public void widgetSelected(SelectionEvent evt) { - deleteButtonWidgetSelected(evt); - } - }); - } - { - addButton = new Button(composite3,SWT.PUSH | SWT.CENTER); - addButton.setText("Add"); - FormData addButtonLData = new FormData(); - addButtonLData.width = 150; - addButtonLData.height = 30; - addButtonLData.left = new FormAttachment(0, 1000, 160); - addButtonLData.top = new FormAttachment(0, 1000, 15); - addButton.setLayoutData(addButtonLData); - addButton.setToolTipText("add new Files to Database"); - addButton.addSelectionListener(new SelectionAdapter() { - public void widgetSelected(SelectionEvent evt) { - addButtonWidgetSelected(evt); - } - }); - } - } - } - } - { - tab3 = new CTabItem(cTabFolder1,SWT.NONE); - tab3.setText("Server"); - { - container3 = new Composite(cTabFolder1,SWT.NONE); - GridLayout container3Layout = new GridLayout(); - container3Layout.makeColumnsEqualWidth = true; - container3Layout.numColumns=2; - container3Layout.verticalSpacing = 0; - container3Layout.horizontalSpacing = 5; - container3.setLayout(container3Layout); - tab3.setControl(container3); - { - tab3Group1 = new Group(container3,SWT.NONE); - FormLayout tab3Group1Layout = new FormLayout(); - tab3Group1.setLayout(tab3Group1Layout); - GridData tab3Group1LData = new GridData(); - tab3Group1LData.widthHint = 500; - tab3Group1LData.heightHint = 129; - tab3Group1LData.horizontalAlignment = GridData.CENTER; - tab3Group1.setLayoutData(tab3Group1LData); - { - composite4 = new Composite(tab3Group1, SWT.NONE); - FormLayout composite4Layout = new FormLayout(); - composite4.setLayout(composite4Layout); - FormData composite4LData = new FormData(); - composite4LData.width = 504; - composite4LData.height = 140; - composite4LData.left = new FormAttachment(0, 1000, -3); - composite4LData.top = new FormAttachment(0, 1000, -6); - composite4.setLayoutData(composite4LData); - { - actualStreamLabel2 = new CLabel( - composite4, - SWT.NONE); - FormData actualStreamLabel2LData = new FormData(); - actualStreamLabel2LData.width = 98; - actualStreamLabel2LData.height = 21; - actualStreamLabel2LData.left = new FormAttachment(0, 1000, 180); - actualStreamLabel2LData.top = new FormAttachment(0, 1000, 65); - actualStreamLabel2.setLayoutData(actualStreamLabel2LData); - actualStreamLabel2.setFont(SWTResourceManager.getFont("Times", 8, 1, false, false)); - } - { - actualStreamLabel1 = new CLabel( - composite4, - SWT.NONE); - actualStreamLabel1.setText("Actual Number of Streams:"); - FormData actualStreamLabel1LData = new FormData(); - actualStreamLabel1LData.width = 160; - actualStreamLabel1LData.height = 21; - actualStreamLabel1LData.left = new FormAttachment(0, 1000, 14); - actualStreamLabel1LData.top = new FormAttachment(0, 1000, 65); - actualStreamLabel1.setLayoutData(actualStreamLabel1LData); - actualStreamLabel1.setFont(SWTResourceManager.getFont("Times", 8, 1, false, false)); - } - { - streamLabel2 = new CLabel( - composite4, - SWT.None); - FormData streamLabel2LData = new FormData(); - streamLabel2LData.width = 98; - streamLabel2LData.height = 21; - streamLabel2LData.left = new FormAttachment(0, 1000, 180); - streamLabel2LData.top = new FormAttachment(0, 1000, 40); - streamLabel2.setLayoutData(streamLabel2LData); - streamLabel2.setFont(SWTResourceManager.getFont("Times", 8, 1, false, false)); - } - { - streamLabel1 = new CLabel( - composite4, - SWT.NONE); - streamLabel1.setText("Total Number of Streams:"); - FormData streamLabel1LData = new FormData(); - streamLabel1LData.width = 150; - streamLabel1LData.height = 21; - streamLabel1LData.left = new FormAttachment(0, 1000, 14); - streamLabel1LData.top = new FormAttachment(0, 1000, 40); - streamLabel1.setLayoutData(streamLabel1LData); - streamLabel1.setFont(SWTResourceManager.getFont("Times", 8, 1, false, false)); - } - { - data2 = new CLabel(composite4, SWT.NONE); - FormData data2LData = new FormData(); - data2LData.width = 98; - data2LData.height = 21; - data2LData.left = new FormAttachment(0, 1000, 180); - data2LData.top = new FormAttachment(0, 1000, 15); - data2.setLayoutData(data2LData); - data2.setFont(SWTResourceManager.getFont("Times", 8, 1, false, false)); - } - { - data1 = new CLabel(composite4, SWT.NONE); - data1.setText("Total Data in Database:"); - FormData data1LData = new FormData(); - data1LData.width = 150; - data1LData.height = 21; - data1LData.left = new FormAttachment(0, 1000, 14); - data1LData.top = new FormAttachment(0, 1000, 15); - data1.setLayoutData(data1LData); - data1.setFont(SWTResourceManager.getFont("Times", 8, 1, false, false)); - } - { - shutdown = new Button(composite4, SWT.PUSH - | SWT.CENTER); - shutdown.setText("Shutdown"); - FormData shutdownLData = new FormData(); - shutdownLData.width = 77; - shutdownLData.height = 21; - shutdownLData.left = new FormAttachment(0, 1000, 35); - shutdownLData.top = new FormAttachment(0, 1000, 105); - shutdown.setLayoutData(shutdownLData); - shutdown.setToolTipText("Server shutdown"); - shutdown.addSelectionListener(new SelectionAdapter() { - public void widgetSelected(SelectionEvent evt) { - model.serverShutdown(); - } - }); - } - { - iptable = new Table(composite4, SWT.SINGLE); - FormData iptableLData = new FormData(); - iptableLData.width = 173; - iptableLData.height = 110; - iptableLData.left = new FormAttachment(0, 1000, 308); - iptableLData.top = new FormAttachment(0, 1000, 7); - iptable.setLayoutData(iptableLData); - iptable.setHeaderVisible(true); - iptable.setToolTipText("User online"); - { - userName = new TableColumn( - iptable, - SWT.CENTER); - userName.setText("Username"); - userName.setWidth(70); - } - { - ip = new TableColumn(iptable, SWT.BEGINNING); - ip.setText("Ip"); - ip.setWidth(119); - } - final int time = 1000; - final Runnable timer = new Runnable() { - public void run() { - refillIpTable(); - data2.setText("not supported in yalp2"); - streamLabel2.setText( /*new Integer(model.getAllStreamNum()).toString() */ "not supported in yalp2"); - display.timerExec(time, this); - actualStreamLabel2.setText( /*new Integer(model.getActualStreamNum()).toString()*/ "not supported in yalp2"); - } - }; - display.timerExec(time, timer); - } - } - } - { - tab3Group2 = new Group(container3,SWT.NONE); - this.logo(tab3Group2); - } - { - tab3Group3 = new Group(container3,SWT.NONE); - FormLayout tab3Group3Layout = new FormLayout(); - tab3Group3.setLayout(tab3Group3Layout); - GridData tab3Group3LData = new GridData(); - tab3Group3LData.widthHint = 500; - tab3Group3LData.heightHint = 284; - tab3Group3LData.horizontalAlignment = GridData.CENTER; - tab3Group3.setLayoutData(tab3Group3LData); - tab3Group3.setText("User Management"); - { - delete = new Button(tab3Group3,SWT.PUSH | SWT.CENTER); - delete.setText("Delete"); - FormData deleteLData = new FormData(); - deleteLData.width = 45; - deleteLData.height = 21; - deleteLData.left = new FormAttachment(0, 1000, 447); - deleteLData.top = new FormAttachment(0, 1000, 254); - delete.setLayoutData(deleteLData); - delete.setToolTipText("delete User"); - delete.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.DELETE); - while(UserTable.getItemCount()!=0){ - UserTable.remove(0); - } - ArrayList<YalpUser> 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<YalpUser> 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<YalpUser> 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<YalpUser> 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<resultTable1.getSelectionCount();i++){ - int id=new Integer(resultTable1.getSelection()[i].getText(0)).intValue(); - System.out.println(resultTable1.getSelection()[i].getText(1)); - model.add2PlayList(id); - } - } - while(playlistTable.getItemCount()!=0){ - playlistTable.remove(0); - } - ArrayList<Media> playlist=model.getToPlaylist(); - for(int i=0;i<playlist.size();i++){ - Media result=playlist.get(i); - TableItem item = new TableItem(playlistTable,SWT.NONE); - item.setText(0,result.name); - item.setText(1,result.duration); - } - play.setEnabled(true); - if (playlistTable.getItemCount()>1&& !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<Media> playlist=model.getToPlaylist(); - for(int i=0;i<playlist.size();i++){ - Media result=playlist.get(i); - TableItem item = new TableItem(playlistTable,SWT.NONE); - item.setText(0,result.name); - item.setText(1,result.duration); - } - if (playlistTable.getItemCount()==0)play.setEnabled(false); - } - }); - } - { - playlistTable = new Table(playlistComposite,SWT.MULTI|SWT.FULL_SELECTION); - playlistTable.setHeaderVisible(true); - FormData playlistTableLData = new FormData(); - playlistTableLData.width = 184; - playlistTableLData.height = 330; - playlistTableLData.top = new FormAttachment(24, 1000, 0); - playlistTableLData.left = new FormAttachment(0, 1000, 38); - playlistTable.setLayoutData(playlistTableLData); - playlistTable.setToolTipText("Playlist"); - playlistTable.addSelectionListener(new SelectionAdapter() { - public void widgetSelected(SelectionEvent evt) { - if (isNotPlaying)del.setEnabled(true); - } - }); - TableColumn title = new TableColumn(playlistTable,SWT.LEFT); - title.setText("Title"); - title.setWidth(120); - title.setMoveable(true); - TableColumn duration = new TableColumn(playlistTable,SWT.RIGHT); - duration.setText("Duration"); - duration.setWidth(80); - duration.setMoveable(true); - } - } - } - } - } - this.layout(); - } catch (Exception e) { - e.printStackTrace(); - } - } - - //TODO:start find - private void find(Group find,Composite resultComposite, Composite playlistComposite,Composite bottemComposite,int _tab){ - final Text searchField = new Text(find,SWT.NONE); - final Button findButton = new Button(find,SWT.PUSH | SWT.CENTER); - final Button allCheckBox = new Button(find,SWT.RADIO | SWT.LEFT); - final Button videoCheckBox = new Button(find,SWT.RADIO | SWT.LEFT); - final Button audioCheckBox = new Button(find,SWT.RADIO | SWT.LEFT); - final CLabel returnNum= new CLabel(find, SWT.NONE); - final int tab=_tab; - { - cLabel2 = new CLabel(find, SWT.NONE); - if (tab==1)cLabel2.setText("find and stream mutimedia files"); - else cLabel2.setText("find and manage mutimedia files"); - FormData cLabel2LData = new FormData(); - cLabel2LData.width = 250; - cLabel2LData.height = 21; - cLabel2LData.left = new FormAttachment(0,1000,46); - cLabel2LData.top = new FormAttachment(0,1000,13); - cLabel2.setLayoutData(cLabel2LData); - } - { - - FormData allCheckBoxLData = new FormData(); - allCheckBoxLData.left = new FormAttachment(0, 1000, 95); - allCheckBoxLData.top = new FormAttachment(0, 1000, 98); - allCheckBoxLData.width = 56; - allCheckBoxLData.height = 14; - allCheckBox.setLayoutData(allCheckBoxLData); - allCheckBox.setText("All"); - allCheckBox.setSelection(true); - allCheckBox.setToolTipText("Find Audio and Video Files"); - allCheckBox.addKeyListener(new KeyAdapter() { - public void keyPressed(KeyEvent evt) { - if (evt.character == SWT.CR) { - searchPressed( - searchField, - videoCheckBox, - audioCheckBox, - returnNum, - tab); - } - } - }); - } - { - - FormData audioCheckBoxLData = new FormData(); - audioCheckBoxLData.left = new FormAttachment(0, 1000, 195); - audioCheckBoxLData.top = new FormAttachment(0, 1000, 98); - audioCheckBoxLData.width = 56; - audioCheckBoxLData.height = 14; - audioCheckBox.setLayoutData(audioCheckBoxLData); - audioCheckBox.setText("Audio"); - audioCheckBox.setToolTipText("Find Audio Files"); - audioCheckBox - .addKeyListener(new KeyAdapter() { - public void keyPressed(KeyEvent evt) { - if (evt.character == SWT.CR) { - searchPressed( - searchField, - videoCheckBox, - audioCheckBox, - returnNum, - tab); - } - } - }); - } - { - - FormData videoCheckBoxLData = new FormData(); - videoCheckBoxLData.left = new FormAttachment(0, 1000, 296); - videoCheckBoxLData.top = new FormAttachment(0, 1000, 98); - videoCheckBoxLData.width = 56; - videoCheckBoxLData.height = 14; - videoCheckBox.setLayoutData(videoCheckBoxLData); - videoCheckBox.setText("Video"); - videoCheckBox.setToolTipText("Find Video Files"); - videoCheckBox - .addKeyListener(new KeyAdapter() { - public void keyPressed(KeyEvent evt) { - if (evt.character == SWT.CR) { - searchPressed( - searchField, - videoCheckBox, - audioCheckBox, - returnNum, - tab); - } - } - }); - } - - - FormLayout findLayout = new FormLayout(); - find.setLayout(findLayout); - GridData findLData = new GridData(); - findLData.widthHint = 497; - findLData.heightHint = 130; - find.setLayoutData(findLData); - find.setSize(497, 104); - find.addKeyListener(new KeyAdapter() { - public void keyPressed(KeyEvent evt) { - if (evt.character==SWT.CR){ - searchPressed(searchField,videoCheckBox,audioCheckBox,returnNum,tab); - } - } - }); - { - //searchField - FormData searchFieldLData = new FormData(); - searchFieldLData.width = 344; - searchFieldLData.height = 20; - searchFieldLData.left = new FormAttachment(0,1000,37); - searchFieldLData.top = new FormAttachment(0,1000,55); - searchField.setLayoutData(searchFieldLData); - searchField.setFont(SWTResourceManager.getFont("Times",12,0,false,false)); - searchField.setToolTipText("Keyword"); - searchField.addKeyListener(new KeyAdapter() { - public void keyPressed(KeyEvent evt) { - if (evt.character==SWT.CR){ - searchPressed(searchField,videoCheckBox,audioCheckBox,returnNum,tab); - } - } - }); - } - { - //findButton - findButton.setText("Find"); - FormData findButtonLData = new FormData(70,26); - findButtonLData.width = 70; - findButtonLData.height = 26; - findButtonLData.left = new FormAttachment(0,1000,403); - findButtonLData.top = new FormAttachment(0,1000,52); - findButton.setLayoutData(findButtonLData); - findButton.setSize(70, 26); - findButton.setToolTipText("Find"); - findButton.addSelectionListener(new SelectionAdapter() { - public void widgetSelected(SelectionEvent evt) { - add2.setEnabled(false); - searchPressed(searchField,videoCheckBox,audioCheckBox,returnNum,tab); - } - }); - } - { - returnNum.setText(""); - FormData returnNumLData = new FormData(); - returnNumLData.width = 63; - returnNumLData.height = 21; - returnNumLData.left = new FormAttachment(0, 1000, 410); - returnNumLData.top = new FormAttachment(0, 1000, 93); - returnNum.setLayoutData(returnNumLData); - } - } - - //TODO logo - private void logo(Group logo){ - FormLayout logoLayout = new FormLayout(); - logo.setLayout(logoLayout); - GridData logoLData = new GridData(); - logoLData.widthHint = 260; - logoLData.heightHint = 130; - logo.setLayoutData(logoLData); - logoLayout.marginWidth=30; - logoLayout.marginHeight=0; - { - cLabel2 = new CLabel(logo,SWT.NONE); - cLabel2.setImage(new Image(this.getDisplay(),"img/yalpV2.gif")); - } - - - - } - - - - //TODO resultComposite - private void resultTable(Composite resultComposite,Table resultTable,int tab){ - - resultComposite.setVisible(false); - FormLayout resultCompositeLayout = new FormLayout(); - resultComposite.setLayout(resultCompositeLayout); - GridData resultCompositeLData = new GridData(); - resultCompositeLData.widthHint = 502; - if (tab==1)resultCompositeLData.heightHint = 390; - else resultCompositeLData.heightHint = 380; - resultComposite.setLayoutData(resultCompositeLData); - { - FormData resultTableLData = new FormData(); - resultTableLData.width = 482; - if (tab==1)resultTableLData.height = 365; - else resultTableLData.height = 313; - resultTableLData.left = new FormAttachment(0, 1000, 0); - resultTableLData.top = new FormAttachment(0, 1000, 7); - resultTable.setLayoutData(resultTableLData); - resultTable.setHeaderVisible(true); - TableColumn id = new TableColumn(resultTable,SWT.RIGHT); - id.setText("ID"); - id.setWidth(0); - id.setMoveable(true); - id.addListener(SWT.Selection, new SortListener(this,resultTable,0,8)); - TableColumn title = new TableColumn(resultTable,SWT.LEFT); - title.setText("Title"); - title.setWidth(110); - title.setMoveable(true); - title.addListener(SWT.Selection, new SortListener(this,resultTable,1,8)); - TableColumn author = new TableColumn(resultTable,SWT.LEFT); - author.setText("Author"); - author.setWidth(100); - author.setMoveable(true); - author.addListener(SWT.Selection, new SortListener(this,resultTable,2,8)); - TableColumn album = new TableColumn(resultTable,SWT.LEFT); - album.setText("Album"); - album.setWidth(100); - album.setMoveable(true); - album.addListener(SWT.Selection, new SortListener(this,resultTable,3,8)); - TableColumn year = new TableColumn(resultTable,SWT.LEFT); - year.setText("Year"); - year.setWidth(60); - year.setMoveable(true); - year.addListener(SWT.Selection, new SortListener(this,resultTable,4,8)); - TableColumn category = new TableColumn(resultTable,SWT.LEFT); - category.setText("Category"); - category.setWidth(60); - category.setMoveable(true); - category.addListener(SWT.Selection, new SortListener(this,resultTable,5,8)); - TableColumn type = new TableColumn(resultTable,SWT.LEFT); - type.setText("Type"); - type.setWidth(60); - type.setMoveable(true); - type.addListener(SWT.Selection, new SortListener(this,resultTable,6,8)); - } - - } - private void saveButtonWidgetSelected(SelectionEvent evt) { - try{ - int OwnerId = model.getOwnerid(ownerId.getText()); - Media media = new Media(); - media.id = new Integer(id.getText()).intValue(); - media.name = title.getText(); - media.duration = duration.getText(); - media.lastEdit = new Date(System.currentTimeMillis()).toString(); - media.path = path.getText(); - media.fileName = name.getText(); - /* t.b.d. - author.getText(); - album.getText(); - category.getText(); - year.getText(); - new Integer(aBitrate.getText()).intValue(); - new Integer(vBitrate.getText()).intValue(); - resolution.getText(); - OwnerId; - */ - if (model.changeMedia(media, Action.EDIT)) { - int select=resultTable2.getSelectionIndex(); - TableItem item= new TableItem(resultTable2,SWT.NONE,select); - item.setText(0,new Integer(media.id).toString()); - item.setText(1,media.name); - /* t.b.d. read from string props - item.setText(2,media.author.name); - item.setText(3,media.album); - item.setText(4,media.year); - item.setText(5,media.category); - */ - item.setText(6,model.getTypeName(media.type)); - resultTable2.remove(select+1); - resultTable2.setSelection(select); - changeComposite.setVisible(false); - deleteButton.setVisible(false); - } - }catch (Exception e){ - System.out.println("Exception in SaveButton"+e); - } - } - - private void searchPressed(Text searchField,Button videoCheckBox,Button audioCheckBox,CLabel returnNum,int tab){ - String search = searchField.getText(); - int returnVal; - ArrayList<MediaType> types = new ArrayList<MediaType>(); - - 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); - ArrayList<Media>resultList = 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<ClientInfo> 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); - } - -} - +/*
+ * 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
+ *
+ * <em></em>
+ *
+ * @author Volker Dahnke / Manuel Traut
+ *
+ * @version 1 02-04-2006<br>
+ *
+ */
+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<resultTable1.getSelectionCount();i++){
+ int id=new Integer(resultTable1.getSelection()[i].getText(0)).intValue();
+ System.out.println(resultTable1.getSelection()[i].getText(1));
+ model.add2PlayList(id);
+ }
+ }
+ while(playlistTable.getItemCount()!=0){
+ playlistTable.remove(0);
+ }
+ ArrayList<Media> playlist=model.getToPlaylist();
+ for(int i=0;i<playlist.size();i++){
+ Media result=playlist.get(i);
+ TableItem item = new TableItem(playlistTable,SWT.NONE);
+ item.setText(0,result.name);
+ item.setText(1,result.duration);
+ }
+ play.setEnabled(true);
+ if (playlistTable.getItemCount()>1&& !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<Media> playlist=model.getToPlaylist();
+ for(int i=0;i<playlist.size();i++){
+ Media result=playlist.get(i);
+ TableItem item = new TableItem(playlistTable,SWT.NONE);
+ item.setText(0,result.name);
+ item.setText(1,result.duration);
+ }
+ if (playlistTable.getItemCount()==0)play.setEnabled(false);
+ }
+ });
+ }
+ {
+ playlistTable = new Table(playlistComposite,SWT.MULTI|SWT.FULL_SELECTION);
+ playlistTable.setHeaderVisible(true);
+ FormData playlistTableLData = new FormData();
+ playlistTableLData.width = 184;
+ playlistTableLData.height = 330;
+ playlistTableLData.top = new FormAttachment(24, 1000, 0);
+ playlistTableLData.left = new FormAttachment(0, 1000, 38);
+ playlistTable.setLayoutData(playlistTableLData);
+ playlistTable.setToolTipText("Playlist");
+ playlistTable.addSelectionListener(new SelectionAdapter() {
+ public void widgetSelected(SelectionEvent evt) {
+ if (isNotPlaying)del.setEnabled(true);
+ }
+ });
+ TableColumn title = new TableColumn(playlistTable,SWT.LEFT);
+ title.setText("Title");
+ title.setWidth(120);
+ title.setMoveable(true);
+ TableColumn duration = new TableColumn(playlistTable,SWT.RIGHT);
+ duration.setText("Duration");
+ duration.setWidth(80);
+ duration.setMoveable(true);
+ }
+ }
+ }
+ /*{
+ bottemComposite = new Composite(container1,SWT.NONE);
+ bottemComposite.setVisible(false);
+ GridLayout bottemCompositeLayout = new GridLayout();
+ bottemCompositeLayout.makeColumnsEqualWidth = true;
+ bottemCompositeLayout.verticalSpacing = 2;
+ bottemCompositeLayout.horizontalSpacing = 5;
+ bottemComposite.setLayout(bottemCompositeLayout);
+ RowData bottemCompositeLData = new RowData();
+ bottemCompositeLData.width = 777;
+ bottemCompositeLData.height = 68;
+ bottemComposite.setLayoutData(bottemCompositeLData);
+ {
+ styledText1 = new StyledText(bottemComposite,SWT.NONE);
+ GridData styledText1LData = new GridData();
+ styledText1LData.widthHint = 765;
+ styledText1LData.heightHint = 55;
+ styledText1.setLayoutData(styledText1LData);
+ styledText1.setText("styledText1");
+ styledText1.setSize(765, 55);
+ }
+ }*/
+ }
+ }
+ {
+ tab2 = new CTabItem(cTabFolder1,SWT.NONE);
+ tab2.setText("Change");
+ {
+ container2 = new Composite(cTabFolder1,SWT.NONE);
+ GridLayout container2Layout = new GridLayout();
+ container2Layout.makeColumnsEqualWidth = true;
+ container2.setLayout(container2Layout);
+ tab2.setControl(container2);
+ container2.setVisible(false);
+ {
+ composite2 = new Composite(container2,SWT.NONE);
+ GridLayout composite2Layout = new GridLayout();
+ composite2Layout.makeColumnsEqualWidth = true;
+ composite2Layout.numColumns=2;
+ composite2.setLayout(composite2Layout);
+ GridData composite2LData = new GridData();
+ composite2LData.widthHint = 780;
+ composite2LData.heightHint = 497;
+ composite2.setLayoutData(composite2LData);
+ {
+ group1 = new Group(composite2,SWT.NONE);
+ this.find(group1,group2,composite1,changeComposite,2);
+ }
+ {
+ group2 = new Group(composite2,SWT.NONE);
+ this.logo(group2);
+ }
+ {
+ composite1 = new Composite(composite2,SWT.NONE);
+ {
+ resultTable2 = new Table(composite1,SWT.MULTI|SWT.FULL_SELECTION);
+ resultTable2.setToolTipText("Medias");
+ resultTable2.addSelectionListener(new SelectionAdapter() {
+ public void widgetSelected(SelectionEvent evt) {
+ if(resultTable2.getSelectionCount()<2){
+ int identity =new Integer(resultTable2.getSelection()[0].getText()).intValue();
+ Media result = model.getMediaWithId(identity,2);
+ if (result!=null){
+ id.setText(new Integer(result.id).toString());
+ title.setText(result.name);
+ /* t.b.d. parse from string props
+ author.setText(result.author);
+ album.setText(result.album);
+ category.setText(result.category);
+ year.setText(result.year);
+ */
+ duration.setText(result.duration);
+ /*
+ aBitrate.setText(new Integer(result.aBitrate).toString());
+ vBitrate.setText(new Integer(result.vBitrate).toString());
+ resolution.setText(result.resolution);
+ */
+ ownerId.setText(result.owner.name);
+ lastEdit.setText(result.lastEdit);
+ path.setText(result.path);
+ name.setText(result.name);
+ String _type = model.getTypeName(result.type);
+ type.setText(_type);
+ changeComposite.setVisible(true);
+ deleteButton.setVisible(true);
+ }
+ }else changeComposite.setVisible(false);
+ }
+ });
+ this.resultTable(composite1,resultTable2,2);
+ }
+ }
+ {
+ changeComposite = new Composite(composite2,SWT.NONE);
+ FormLayout changeCompositeLayout = new FormLayout();
+ changeComposite.setLayout(changeCompositeLayout);
+ GridData changeCompositeLData = new GridData();
+ changeCompositeLData.widthHint = 238;
+ changeCompositeLData.heightHint = 357;
+ changeCompositeLData.verticalAlignment = GridData.BEGINNING;
+ changeComposite.setLayoutData(changeCompositeLData);
+ changeComposite.setVisible(false);
+ {
+ saveButton = new Button(changeComposite,SWT.PUSH | SWT.CENTER);
+ saveButton.setText("Save");
+ FormData saveButtonLData = new FormData();
+ saveButtonLData.width = 40;
+ saveButtonLData.height = 21;
+ saveButtonLData.left = new FormAttachment(0, 1000, 30);
+ saveButtonLData.top = new FormAttachment(0, 1000, 315);
+ saveButton.setLayoutData(saveButtonLData);
+ saveButton.setToolTipText("save Changes");
+ saveButton.addSelectionListener(new SelectionAdapter() {
+ public void widgetSelected(SelectionEvent evt) {
+ saveButtonWidgetSelected(evt);
+ }
+ });
+ }
+ {
+ id = new Text(changeComposite,SWT.NONE);
+ FormData idLData = new FormData();
+ idLData.width = 124;
+ idLData.height = 14;
+ idLData.left = new FormAttachment(0, 1000, 100);
+ idLData.top = new FormAttachment(0, 1000, 10);
+ id.setLayoutData(idLData);
+ id.setEditable(false);
+ }
+ {
+ idLabel = new CLabel(changeComposite,SWT.NONE);
+ idLabel.setText("Id:");
+ FormData idLabelLData = new FormData();
+ idLabelLData.width = 60;
+ idLabelLData.height = 21;
+ idLabelLData.left = new FormAttachment(0, 1000, 20);
+ idLabelLData.top = new FormAttachment(0, 1000, 5);
+ idLabel.setLayoutData(idLabelLData);
+ }
+ {
+ cLabel1 = new CLabel(changeComposite,SWT.NONE);
+ cLabel1.setText("Type:");
+ FormData cLabel1LData = new FormData();
+ cLabel1LData.width = 60;
+ cLabel1LData.height = 21;
+ cLabel1LData.left = new FormAttachment(0, 1000, 20);
+ cLabel1LData.top = new FormAttachment(0, 1000, 285);
+ cLabel1.setLayoutData(cLabel1LData);
+ }
+ {
+ nameLabel = new CLabel(changeComposite,SWT.NONE);
+ nameLabel.setText("Name:");
+ FormData nameLabelLData = new FormData();
+ nameLabelLData.width = 60;
+ nameLabelLData.height = 21;
+ nameLabelLData.left = new FormAttachment(0, 1000, 20);
+ nameLabelLData.top = new FormAttachment(0, 1000, 265);
+ nameLabel.setLayoutData(nameLabelLData);
+ }
+ {
+ pathLabel = new CLabel(changeComposite,SWT.NONE);
+ pathLabel.setText("Path:");
+ FormData pathLabelLData = new FormData();
+ pathLabelLData.width = 60;
+ pathLabelLData.height = 21;
+ pathLabelLData.left = new FormAttachment(0, 1000, 20);
+ pathLabelLData.top = new FormAttachment(0, 1000, 245);
+ pathLabel.setLayoutData(pathLabelLData);
+ }
+ {
+ lastEditLable = new CLabel(changeComposite,SWT.NONE);
+ lastEditLable.setText("Last Edit:");
+ FormData lastEditLableLData = new FormData();
+ lastEditLableLData.width = 60;
+ lastEditLableLData.height = 21;
+ lastEditLableLData.left = new FormAttachment(0, 1000, 20);
+ lastEditLableLData.top = new FormAttachment(0, 1000, 225);
+ lastEditLable.setLayoutData(lastEditLableLData);
+ }
+ {
+ ownerIdLabel = new CLabel(changeComposite,SWT.NONE);
+ ownerIdLabel.setText("Owner:");
+ FormData ownerIdLabelLData = new FormData();
+ ownerIdLabelLData.width = 60;
+ ownerIdLabelLData.height = 21;
+ ownerIdLabelLData.left = new FormAttachment(0, 1000, 20);
+ ownerIdLabelLData.top = new FormAttachment(0, 1000, 205);
+ ownerIdLabel.setLayoutData(ownerIdLabelLData);
+ }
+ {
+ resolutionLabel = new CLabel(changeComposite,SWT.NONE);
+ resolutionLabel.setText("Resolution:");
+ FormData resolutionLabelLData = new FormData();
+ resolutionLabelLData.width = 60;
+ resolutionLabelLData.height = 21;
+ resolutionLabelLData.left = new FormAttachment(0, 1000, 20);
+ resolutionLabelLData.top = new FormAttachment(0, 1000, 185);
+ resolutionLabel.setLayoutData(resolutionLabelLData);
+ }
+ {
+ vBitrateLabel = new CLabel(changeComposite,SWT.NONE);
+ vBitrateLabel.setText("V-Bitrate:");
+ FormData vBitrateLabelLData = new FormData();
+ vBitrateLabelLData.width = 60;
+ vBitrateLabelLData.height = 21;
+ vBitrateLabelLData.left = new FormAttachment(0, 1000, 20);
+ vBitrateLabelLData.top = new FormAttachment(0, 1000, 165);
+ vBitrateLabel.setLayoutData(vBitrateLabelLData);
+ }
+ {
+ aBitrateLabel = new CLabel(changeComposite,SWT.NONE);
+ aBitrateLabel.setText("A-Bitrate:");
+ FormData aBitrateLabelLData = new FormData();
+ aBitrateLabelLData.width = 60;
+ aBitrateLabelLData.height = 21;
+ aBitrateLabelLData.left = new FormAttachment(0, 1000, 20);
+ aBitrateLabelLData.top = new FormAttachment(0, 1000, 145);
+ aBitrateLabel.setLayoutData(aBitrateLabelLData);
+ }
+ {
+ durationLabel = new CLabel(changeComposite,SWT.NONE);
+ durationLabel.setText("Duration:");
+ FormData durationLabelLData = new FormData();
+ durationLabelLData.width = 60;
+ durationLabelLData.height = 21;
+ durationLabelLData.left = new FormAttachment(0, 1000, 20);
+ durationLabelLData.top = new FormAttachment(0, 1000, 125);
+ durationLabel.setLayoutData(durationLabelLData);
+ }
+ {
+ yearLabel = new CLabel(changeComposite,SWT.NONE);
+ yearLabel.setText("Year:");
+ FormData yearLabelLData = new FormData();
+ yearLabelLData.width = 60;
+ yearLabelLData.height = 21;
+ yearLabelLData.left = new FormAttachment(0, 1000, 20);
+ yearLabelLData.top = new FormAttachment(0, 1000, 105);
+ yearLabel.setLayoutData(yearLabelLData);
+ }
+ {
+ categoryLabel = new CLabel(changeComposite,SWT.NONE);
+ categoryLabel.setText("Category:");
+ FormData categoryLabelLData = new FormData();
+ categoryLabelLData.width = 60;
+ categoryLabelLData.height = 21;
+ categoryLabelLData.left = new FormAttachment(0, 1000, 20);
+ categoryLabelLData.top = new FormAttachment(0, 1000, 85);
+ categoryLabel.setLayoutData(categoryLabelLData);
+ }
+ {
+ albumLabel = new CLabel(changeComposite,SWT.NONE);
+ albumLabel.setText("Album");
+ FormData albumLabelLData = new FormData();
+ albumLabelLData.width = 60;
+ albumLabelLData.height = 21;
+ albumLabelLData.left = new FormAttachment(0, 1000, 20);
+ albumLabelLData.top = new FormAttachment(0, 1000, 65);
+ albumLabel.setLayoutData(albumLabelLData);
+ }
+ {
+ authorLabel = new CLabel(changeComposite,SWT.NONE);
+ authorLabel.setText("Author:");
+ FormData authorLabelLData = new FormData();
+ authorLabelLData.width = 60;
+ authorLabelLData.height = 21;
+ authorLabelLData.left = new FormAttachment(0, 1000, 20);
+ authorLabelLData.top = new FormAttachment(0, 1000, 45);
+ authorLabel.setLayoutData(authorLabelLData);
+ }
+ {
+ titleLabel = new CLabel(changeComposite,SWT.NONE);
+ titleLabel.setText("Title:");
+ FormData cLabel1LData1 = new FormData();
+ cLabel1LData1.width = 60;
+ cLabel1LData1.height = 21;
+ cLabel1LData1.left = new FormAttachment(0, 1000, 20);
+ cLabel1LData1.top = new FormAttachment(0, 1000, 25);
+ titleLabel.setLayoutData(cLabel1LData1);
+ }
+ {
+ type = new CCombo(changeComposite,SWT.NONE);
+ FormData typeLData = new FormData();
+ typeLData.width = 111;
+ typeLData.height = 16;
+ typeLData.left = new FormAttachment(0, 1000, 100);
+ typeLData.top = new FormAttachment(0, 1000, 290);
+ type.setLayoutData(typeLData);
+ type.setCursor(SWTResourceManager.getCursor(SWT.CURSOR_HAND));
+ {
+ type.add("audio");
+ type.add("video");
+ }
+ }
+ {
+ name = new Text(changeComposite,SWT.NONE);
+ FormData nameLData = new FormData();
+ nameLData.width = 124;
+ nameLData.height = 14;
+ nameLData.left = new FormAttachment(0, 1000, 100);
+ nameLData.top = new FormAttachment(0, 1000, 270);
+ name.setLayoutData(nameLData);
+ name.setEditable(false);
+ }
+ {
+ path = new Text(changeComposite,SWT.NONE);
+ FormData pathLData = new FormData();
+ pathLData.width = 124;
+ pathLData.height = 14;
+ pathLData.left = new FormAttachment(0, 1000, 100);
+ pathLData.top = new FormAttachment(0, 1000, 250);
+ path.setLayoutData(pathLData);
+ path.setEditable(false);
+ }
+ {
+ lastEdit = new Text(changeComposite,SWT.NONE);
+ FormData lastEditLData = new FormData();
+ lastEditLData.width = 124;
+ lastEditLData.height = 14;
+ lastEditLData.left = new FormAttachment(0, 1000, 100);
+ lastEditLData.top = new FormAttachment(0, 1000, 230);
+ lastEdit.setLayoutData(lastEditLData);
+ lastEdit.setEditable(false);
+ }
+ {
+ ownerId = new Text(changeComposite,SWT.NONE);
+ FormData ownerIdLData = new FormData();
+ ownerIdLData.width = 124;
+ ownerIdLData.height = 14;
+ ownerIdLData.left = new FormAttachment(0, 1000, 100);
+ ownerIdLData.top = new FormAttachment(0, 1000, 210);
+ ownerId.setLayoutData(ownerIdLData);
+ ownerId.setEditable(false);
+ }
+ {
+ resolution = new Text(changeComposite,SWT.NONE);
+ FormData resolutionLData = new FormData();
+ resolutionLData.width = 124;
+ resolutionLData.height = 14;
+ resolutionLData.left = new FormAttachment(0, 1000, 100);
+ resolutionLData.top = new FormAttachment(0, 1000, 190);
+ resolution.setLayoutData(resolutionLData);
+ }
+ {
+ vBitrate = new Text(changeComposite,SWT.NONE);
+ FormData vBitrateLData = new FormData();
+ vBitrateLData.width = 124;
+ vBitrateLData.height = 14;
+ vBitrateLData.left = new FormAttachment(0, 1000, 100);
+ vBitrateLData.top = new FormAttachment(0, 1000, 170);
+ vBitrate.setLayoutData(vBitrateLData);
+ }
+ {
+ aBitrate = new Text(changeComposite,SWT.NONE);
+ FormData aBitrateLData = new FormData();
+ aBitrateLData.width = 124;
+ aBitrateLData.height = 14;
+ aBitrateLData.left = new FormAttachment(0, 1000, 100);
+ aBitrateLData.top = new FormAttachment(0, 1000, 150);
+ aBitrate.setLayoutData(aBitrateLData);
+ }
+ {
+ duration = new Text(changeComposite,SWT.NONE);
+ FormData durationLData = new FormData();
+ durationLData.width = 124;
+ durationLData.height = 14;
+ durationLData.left = new FormAttachment(0, 1000, 100);
+ durationLData.top = new FormAttachment(0, 1000, 130);
+ duration.setLayoutData(durationLData);
+ }
+ {
+ year = new Text(changeComposite,SWT.NONE);
+ FormData yearLData = new FormData();
+ yearLData.width = 124;
+ yearLData.height = 14;
+ yearLData.left = new FormAttachment(0, 1000, 100);
+ yearLData.top = new FormAttachment(0, 1000, 110);
+ year.setLayoutData(yearLData);
+ }
+ {
+ category = new Text(changeComposite,SWT.NONE);
+ FormData categoryLData = new FormData();
+ categoryLData.width = 124;
+ categoryLData.height = 14;
+ categoryLData.left = new FormAttachment(0, 1000, 100);
+ categoryLData.top = new FormAttachment(0, 1000, 90);
+ category.setLayoutData(categoryLData);
+ category.setCursor(SWTResourceManager.getCursor(SWT.CURSOR_WAIT));
+ }
+ {
+ album = new Text(changeComposite,SWT.NONE);
+ FormData albumLData = new FormData();
+ albumLData.width = 124;
+ albumLData.height = 14;
+ albumLData.left = new FormAttachment(0, 1000, 100);
+ albumLData.top = new FormAttachment(0, 1000, 70);
+ album.setLayoutData(albumLData);
+ }
+ {
+ author = new Text(changeComposite,SWT.NONE);
+ FormData authorLData = new FormData();
+ authorLData.width = 124;
+ authorLData.height = 14;
+ authorLData.left = new FormAttachment(0, 1000, 100);
+ authorLData.top = new FormAttachment(0, 1000, 50);
+ author.setLayoutData(authorLData);
+ }
+ {
+ title = new Text(changeComposite,SWT.NONE);
+ FormData titleLData = new FormData();
+ titleLData.width = 124;
+ titleLData.height = 13;
+ titleLData.top = new FormAttachment(0, 1000, 30);
+ titleLData.left = new FormAttachment(0, 1000, 100);
+ title.setLayoutData(titleLData);
+ }
+ }
+ }
+ {
+ composite3 = new Composite(container2,SWT.NONE);
+ FormLayout composite3Layout = new FormLayout();
+ composite3.setLayout(composite3Layout);
+ GridData composite3LData = new GridData();
+ composite3LData.widthHint = 777;
+ composite3LData.heightHint = 58;
+ composite3.setLayoutData(composite3LData);
+ {
+ deleteButton = new Button(composite3,SWT.PUSH | SWT.CENTER);
+ deleteButton.setText("Delete");
+ deleteButton.setVisible(false);
+ FormData deleteButtonLData = new FormData();
+ deleteButtonLData.width = 150;
+ deleteButtonLData.height = 30;
+ deleteButtonLData.left = new FormAttachment(0, 1000, 470);
+ deleteButtonLData.top = new FormAttachment(0, 1000, 15);
+ deleteButton.setLayoutData(deleteButtonLData);
+ deleteButton.setToolTipText("delete File from Database");
+ deleteButton.addSelectionListener(new SelectionAdapter() {
+ public void widgetSelected(SelectionEvent evt) {
+ deleteButtonWidgetSelected(evt);
+ }
+ });
+ }
+ {
+ addButton = new Button(composite3,SWT.PUSH | SWT.CENTER);
+ addButton.setText("Add");
+ FormData addButtonLData = new FormData();
+ addButtonLData.width = 150;
+ addButtonLData.height = 30;
+ addButtonLData.left = new FormAttachment(0, 1000, 160);
+ addButtonLData.top = new FormAttachment(0, 1000, 15);
+ addButton.setLayoutData(addButtonLData);
+ addButton.setToolTipText("add new Files to Database");
+ addButton.addSelectionListener(new SelectionAdapter() {
+ public void widgetSelected(SelectionEvent evt) {
+ addButtonWidgetSelected(evt);
+ }
+ });
+ }
+ }
+ }
+ }
+ {
+ tab3 = new CTabItem(cTabFolder1,SWT.NONE);
+ tab3.setText("Server");
+ {
+ container3 = new Composite(cTabFolder1,SWT.NONE);
+ GridLayout container3Layout = new GridLayout();
+ container3Layout.makeColumnsEqualWidth = true;
+ container3Layout.numColumns=2;
+ container3Layout.verticalSpacing = 0;
+ container3Layout.horizontalSpacing = 5;
+ container3.setLayout(container3Layout);
+ tab3.setControl(container3);
+ {
+ tab3Group1 = new Group(container3,SWT.NONE);
+ FormLayout tab3Group1Layout = new FormLayout();
+ tab3Group1.setLayout(tab3Group1Layout);
+ GridData tab3Group1LData = new GridData();
+ tab3Group1LData.widthHint = 500;
+ tab3Group1LData.heightHint = 129;
+ tab3Group1LData.horizontalAlignment = GridData.CENTER;
+ tab3Group1.setLayoutData(tab3Group1LData);
+ {
+ composite4 = new Composite(tab3Group1, SWT.NONE);
+ FormLayout composite4Layout = new FormLayout();
+ composite4.setLayout(composite4Layout);
+ FormData composite4LData = new FormData();
+ composite4LData.width = 504;
+ composite4LData.height = 140;
+ composite4LData.left = new FormAttachment(0, 1000, -3);
+ composite4LData.top = new FormAttachment(0, 1000, -6);
+ composite4.setLayoutData(composite4LData);
+ {
+ actualStreamLabel2 = new CLabel(
+ composite4,
+ SWT.NONE);
+ FormData actualStreamLabel2LData = new FormData();
+ actualStreamLabel2LData.width = 98;
+ actualStreamLabel2LData.height = 21;
+ actualStreamLabel2LData.left = new FormAttachment(0, 1000, 180);
+ actualStreamLabel2LData.top = new FormAttachment(0, 1000, 65);
+ actualStreamLabel2.setLayoutData(actualStreamLabel2LData);
+ actualStreamLabel2.setFont(SWTResourceManager.getFont("Times", 8, 1, false, false));
+ }
+ {
+ actualStreamLabel1 = new CLabel(
+ composite4,
+ SWT.NONE);
+ actualStreamLabel1.setText("Actual Number of Streams:");
+ FormData actualStreamLabel1LData = new FormData();
+ actualStreamLabel1LData.width = 160;
+ actualStreamLabel1LData.height = 21;
+ actualStreamLabel1LData.left = new FormAttachment(0, 1000, 14);
+ actualStreamLabel1LData.top = new FormAttachment(0, 1000, 65);
+ actualStreamLabel1.setLayoutData(actualStreamLabel1LData);
+ actualStreamLabel1.setFont(SWTResourceManager.getFont("Times", 8, 1, false, false));
+ }
+ {
+ streamLabel2 = new CLabel(
+ composite4,
+ SWT.None);
+ FormData streamLabel2LData = new FormData();
+ streamLabel2LData.width = 98;
+ streamLabel2LData.height = 21;
+ streamLabel2LData.left = new FormAttachment(0, 1000, 180);
+ streamLabel2LData.top = new FormAttachment(0, 1000, 40);
+ streamLabel2.setLayoutData(streamLabel2LData);
+ streamLabel2.setFont(SWTResourceManager.getFont("Times", 8, 1, false, false));
+ }
+ {
+ streamLabel1 = new CLabel(
+ composite4,
+ SWT.NONE);
+ streamLabel1.setText("Total Number of Streams:");
+ FormData streamLabel1LData = new FormData();
+ streamLabel1LData.width = 150;
+ streamLabel1LData.height = 21;
+ streamLabel1LData.left = new FormAttachment(0, 1000, 14);
+ streamLabel1LData.top = new FormAttachment(0, 1000, 40);
+ streamLabel1.setLayoutData(streamLabel1LData);
+ streamLabel1.setFont(SWTResourceManager.getFont("Times", 8, 1, false, false));
+ }
+ {
+ data2 = new CLabel(composite4, SWT.NONE);
+ FormData data2LData = new FormData();
+ data2LData.width = 98;
+ data2LData.height = 21;
+ data2LData.left = new FormAttachment(0, 1000, 180);
+ data2LData.top = new FormAttachment(0, 1000, 15);
+ data2.setLayoutData(data2LData);
+ data2.setFont(SWTResourceManager.getFont("Times", 8, 1, false, false));
+ }
+ {
+ data1 = new CLabel(composite4, SWT.NONE);
+ data1.setText("Total Data in Database:");
+ FormData data1LData = new FormData();
+ data1LData.width = 150;
+ data1LData.height = 21;
+ data1LData.left = new FormAttachment(0, 1000, 14);
+ data1LData.top = new FormAttachment(0, 1000, 15);
+ data1.setLayoutData(data1LData);
+ data1.setFont(SWTResourceManager.getFont("Times", 8, 1, false, false));
+ }
+ {
+ shutdown = new Button(composite4, SWT.PUSH
+ | SWT.CENTER);
+ shutdown.setText("Shutdown");
+ FormData shutdownLData = new FormData();
+ shutdownLData.width = 77;
+ shutdownLData.height = 21;
+ shutdownLData.left = new FormAttachment(0, 1000, 35);
+ shutdownLData.top = new FormAttachment(0, 1000, 105);
+ shutdown.setLayoutData(shutdownLData);
+ shutdown.setToolTipText("Server shutdown");
+ shutdown.addSelectionListener(new SelectionAdapter() {
+ public void widgetSelected(SelectionEvent evt) {
+ model.serverShutdown();
+ }
+ });
+ }
+ {
+ iptable = new Table(composite4, SWT.SINGLE);
+ FormData iptableLData = new FormData();
+ iptableLData.width = 173;
+ iptableLData.height = 110;
+ iptableLData.left = new FormAttachment(0, 1000, 308);
+ iptableLData.top = new FormAttachment(0, 1000, 7);
+ iptable.setLayoutData(iptableLData);
+ iptable.setHeaderVisible(true);
+ iptable.setToolTipText("User online");
+ {
+ userName = new TableColumn(
+ iptable,
+ SWT.CENTER);
+ userName.setText("Username");
+ userName.setWidth(70);
+ }
+ {
+ ip = new TableColumn(iptable, SWT.BEGINNING);
+ ip.setText("Ip");
+ ip.setWidth(119);
+ }
+ final int time = 1000;
+ final Runnable timer = new Runnable() {
+ public void run() {
+ refillIpTable();
+ data2.setText("not supported in yalp2");
+ streamLabel2.setText( /*new Integer(model.getAllStreamNum()).toString() */ "not supported in yalp2");
+ display.timerExec(time, this);
+ actualStreamLabel2.setText( /*new Integer(model.getActualStreamNum()).toString()*/ "not supported in yalp2");
+ }
+ };
+ display.timerExec(time, timer);
+ }
+ }
+ }
+ {
+ tab3Group2 = new Group(container3,SWT.NONE);
+ this.logo(tab3Group2);
+ }
+ {
+ tab3Group3 = new Group(container3,SWT.NONE);
+ FormLayout tab3Group3Layout = new FormLayout();
+ tab3Group3.setLayout(tab3Group3Layout);
+ GridData tab3Group3LData = new GridData();
+ tab3Group3LData.widthHint = 500;
+ tab3Group3LData.heightHint = 284;
+ tab3Group3LData.horizontalAlignment = GridData.CENTER;
+ tab3Group3.setLayoutData(tab3Group3LData);
+ tab3Group3.setText("User Management");
+ {
+ delete = new Button(tab3Group3,SWT.PUSH | SWT.CENTER);
+ delete.setText("Delete");
+ FormData deleteLData = new FormData();
+ deleteLData.width = 45;
+ deleteLData.height = 21;
+ deleteLData.left = new FormAttachment(0, 1000, 447);
+ deleteLData.top = new FormAttachment(0, 1000, 254);
+ delete.setLayoutData(deleteLData);
+ delete.setToolTipText("delete User");
+ delete.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.DELETE);
+ while(UserTable.getItemCount()!=0){
+ UserTable.remove(0);
+ }
+ ArrayList<YalpUser> 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<YalpUser> 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<YalpUser> 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<YalpUser> 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<resultTable1.getSelectionCount();i++){
+ int id=new Integer(resultTable1.getSelection()[i].getText(0)).intValue();
+ System.out.println(resultTable1.getSelection()[i].getText(1));
+ model.add2PlayList(id);
+ }
+ }
+ while(playlistTable.getItemCount()!=0){
+ playlistTable.remove(0);
+ }
+ ArrayList<Media> playlist=model.getToPlaylist();
+ for(int i=0;i<playlist.size();i++){
+ Media result=playlist.get(i);
+ TableItem item = new TableItem(playlistTable,SWT.NONE);
+ item.setText(0,result.name);
+ item.setText(1,result.duration);
+ }
+ play.setEnabled(true);
+ if (playlistTable.getItemCount()>1&& !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<Media> playlist=model.getToPlaylist();
+ for(int i=0;i<playlist.size();i++){
+ Media result=playlist.get(i);
+ TableItem item = new TableItem(playlistTable,SWT.NONE);
+ item.setText(0,result.name);
+ item.setText(1,result.duration);
+ }
+ if (playlistTable.getItemCount()==0)play.setEnabled(false);
+ }
+ });
+ }
+ {
+ playlistTable = new Table(playlistComposite,SWT.MULTI|SWT.FULL_SELECTION);
+ playlistTable.setHeaderVisible(true);
+ FormData playlistTableLData = new FormData();
+ playlistTableLData.width = 184;
+ playlistTableLData.height = 330;
+ playlistTableLData.top = new FormAttachment(24, 1000, 0);
+ playlistTableLData.left = new FormAttachment(0, 1000, 38);
+ playlistTable.setLayoutData(playlistTableLData);
+ playlistTable.setToolTipText("Playlist");
+ playlistTable.addSelectionListener(new SelectionAdapter() {
+ public void widgetSelected(SelectionEvent evt) {
+ if (isNotPlaying)del.setEnabled(true);
+ }
+ });
+ TableColumn title = new TableColumn(playlistTable,SWT.LEFT);
+ title.setText("Title");
+ title.setWidth(120);
+ title.setMoveable(true);
+ TableColumn duration = new TableColumn(playlistTable,SWT.RIGHT);
+ duration.setText("Duration");
+ duration.setWidth(80);
+ duration.setMoveable(true);
+ }
+ }
+ }
+ }
+ }
+ this.layout();
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+
+ //TODO:start find
+ private void find(Group find,Composite resultComposite, Composite playlistComposite,Composite bottemComposite,int _tab){
+ final Text searchField = new Text(find,SWT.NONE);
+ final Button findButton = new Button(find,SWT.PUSH | SWT.CENTER);
+ final Button allCheckBox = new Button(find,SWT.RADIO | SWT.LEFT);
+ final Button videoCheckBox = new Button(find,SWT.RADIO | SWT.LEFT);
+ final Button audioCheckBox = new Button(find,SWT.RADIO | SWT.LEFT);
+ final CLabel returnNum= new CLabel(find, SWT.NONE);
+ final int tab=_tab;
+ {
+ cLabel2 = new CLabel(find, SWT.NONE);
+ if (tab==1)cLabel2.setText("find and stream mutimedia files");
+ else cLabel2.setText("find and manage mutimedia files");
+ FormData cLabel2LData = new FormData();
+ cLabel2LData.width = 250;
+ cLabel2LData.height = 21;
+ cLabel2LData.left = new FormAttachment(0,1000,46);
+ cLabel2LData.top = new FormAttachment(0,1000,13);
+ cLabel2.setLayoutData(cLabel2LData);
+ }
+ {
+
+ FormData allCheckBoxLData = new FormData();
+ allCheckBoxLData.left = new FormAttachment(0, 1000, 95);
+ allCheckBoxLData.top = new FormAttachment(0, 1000, 98);
+ allCheckBoxLData.width = 56;
+ allCheckBoxLData.height = 14;
+ allCheckBox.setLayoutData(allCheckBoxLData);
+ allCheckBox.setText("All");
+ allCheckBox.setSelection(true);
+ allCheckBox.setToolTipText("Find Audio and Video Files");
+ allCheckBox.addKeyListener(new KeyAdapter() {
+ public void keyPressed(KeyEvent evt) {
+ if (evt.character == SWT.CR) {
+ searchPressed(
+ searchField,
+ videoCheckBox,
+ audioCheckBox,
+ returnNum,
+ tab);
+ }
+ }
+ });
+ }
+ {
+
+ FormData audioCheckBoxLData = new FormData();
+ audioCheckBoxLData.left = new FormAttachment(0, 1000, 195);
+ audioCheckBoxLData.top = new FormAttachment(0, 1000, 98);
+ audioCheckBoxLData.width = 56;
+ audioCheckBoxLData.height = 14;
+ audioCheckBox.setLayoutData(audioCheckBoxLData);
+ audioCheckBox.setText("Audio");
+ audioCheckBox.setToolTipText("Find Audio Files");
+ audioCheckBox
+ .addKeyListener(new KeyAdapter() {
+ public void keyPressed(KeyEvent evt) {
+ if (evt.character == SWT.CR) {
+ searchPressed(
+ searchField,
+ videoCheckBox,
+ audioCheckBox,
+ returnNum,
+ tab);
+ }
+ }
+ });
+ }
+ {
+
+ FormData videoCheckBoxLData = new FormData();
+ videoCheckBoxLData.left = new FormAttachment(0, 1000, 296);
+ videoCheckBoxLData.top = new FormAttachment(0, 1000, 98);
+ videoCheckBoxLData.width = 56;
+ videoCheckBoxLData.height = 14;
+ videoCheckBox.setLayoutData(videoCheckBoxLData);
+ videoCheckBox.setText("Video");
+ videoCheckBox.setToolTipText("Find Video Files");
+ videoCheckBox
+ .addKeyListener(new KeyAdapter() {
+ public void keyPressed(KeyEvent evt) {
+ if (evt.character == SWT.CR) {
+ searchPressed(
+ searchField,
+ videoCheckBox,
+ audioCheckBox,
+ returnNum,
+ tab);
+ }
+ }
+ });
+ }
+
+
+ FormLayout findLayout = new FormLayout();
+ find.setLayout(findLayout);
+ GridData findLData = new GridData();
+ findLData.widthHint = 497;
+ findLData.heightHint = 130;
+ find.setLayoutData(findLData);
+ find.setSize(497, 104);
+ find.addKeyListener(new KeyAdapter() {
+ public void keyPressed(KeyEvent evt) {
+ if (evt.character==SWT.CR){
+ searchPressed(searchField,videoCheckBox,audioCheckBox,returnNum,tab);
+ }
+ }
+ });
+ {
+ //searchField
+ FormData searchFieldLData = new FormData();
+ searchFieldLData.width = 344;
+ searchFieldLData.height = 20;
+ searchFieldLData.left = new FormAttachment(0,1000,37);
+ searchFieldLData.top = new FormAttachment(0,1000,55);
+ searchField.setLayoutData(searchFieldLData);
+ searchField.setFont(SWTResourceManager.getFont("Times",12,0,false,false));
+ searchField.setToolTipText("Keyword");
+ searchField.addKeyListener(new KeyAdapter() {
+ public void keyPressed(KeyEvent evt) {
+ if (evt.character==SWT.CR){
+ searchPressed(searchField,videoCheckBox,audioCheckBox,returnNum,tab);
+ }
+ }
+ });
+ }
+ {
+ //findButton
+ findButton.setText("Find");
+ FormData findButtonLData = new FormData(70,26);
+ findButtonLData.width = 70;
+ findButtonLData.height = 26;
+ findButtonLData.left = new FormAttachment(0,1000,403);
+ findButtonLData.top = new FormAttachment(0,1000,52);
+ findButton.setLayoutData(findButtonLData);
+ findButton.setSize(70, 26);
+ findButton.setToolTipText("Find");
+ findButton.addSelectionListener(new SelectionAdapter() {
+ public void widgetSelected(SelectionEvent evt) {
+ add2.setEnabled(false);
+ searchPressed(searchField,videoCheckBox,audioCheckBox,returnNum,tab);
+ }
+ });
+ }
+ {
+ returnNum.setText("");
+ FormData returnNumLData = new FormData();
+ returnNumLData.width = 63;
+ returnNumLData.height = 21;
+ returnNumLData.left = new FormAttachment(0, 1000, 410);
+ returnNumLData.top = new FormAttachment(0, 1000, 93);
+ returnNum.setLayoutData(returnNumLData);
+ }
+ }
+
+ //TODO logo
+ private void logo(Group logo){
+ FormLayout logoLayout = new FormLayout();
+ logo.setLayout(logoLayout);
+ GridData logoLData = new GridData();
+ logoLData.widthHint = 260;
+ logoLData.heightHint = 130;
+ logo.setLayoutData(logoLData);
+ logoLayout.marginWidth=30;
+ logoLayout.marginHeight=0;
+ {
+ cLabel2 = new CLabel(logo,SWT.NONE);
+ cLabel2.setImage(new Image(this.getDisplay(),"img/yalpV2.gif"));
+ }
+
+
+
+ }
+
+
+
+ //TODO resultComposite
+ private void resultTable(Composite resultComposite,Table resultTable,int tab){
+
+ resultComposite.setVisible(false);
+ FormLayout resultCompositeLayout = new FormLayout();
+ resultComposite.setLayout(resultCompositeLayout);
+ GridData resultCompositeLData = new GridData();
+ resultCompositeLData.widthHint = 502;
+ if (tab==1)resultCompositeLData.heightHint = 390;
+ else resultCompositeLData.heightHint = 380;
+ resultComposite.setLayoutData(resultCompositeLData);
+ {
+ FormData resultTableLData = new FormData();
+ resultTableLData.width = 482;
+ if (tab==1)resultTableLData.height = 365;
+ else resultTableLData.height = 313;
+ resultTableLData.left = new FormAttachment(0, 1000, 0);
+ resultTableLData.top = new FormAttachment(0, 1000, 7);
+ resultTable.setLayoutData(resultTableLData);
+ resultTable.setHeaderVisible(true);
+ TableColumn id = new TableColumn(resultTable,SWT.RIGHT);
+ id.setText("ID");
+ id.setWidth(0);
+ id.setMoveable(true);
+ id.addListener(SWT.Selection, new SortListener(this,resultTable,0,8));
+ TableColumn title = new TableColumn(resultTable,SWT.LEFT);
+ title.setText("Title");
+ title.setWidth(110);
+ title.setMoveable(true);
+ title.addListener(SWT.Selection, new SortListener(this,resultTable,1,8));
+ TableColumn author = new TableColumn(resultTable,SWT.LEFT);
+ author.setText("Author");
+ author.setWidth(100);
+ author.setMoveable(true);
+ author.addListener(SWT.Selection, new SortListener(this,resultTable,2,8));
+ TableColumn album = new TableColumn(resultTable,SWT.LEFT);
+ album.setText("Album");
+ album.setWidth(100);
+ album.setMoveable(true);
+ album.addListener(SWT.Selection, new SortListener(this,resultTable,3,8));
+ TableColumn year = new TableColumn(resultTable,SWT.LEFT);
+ year.setText("Year");
+ year.setWidth(60);
+ year.setMoveable(true);
+ year.addListener(SWT.Selection, new SortListener(this,resultTable,4,8));
+ TableColumn category = new TableColumn(resultTable,SWT.LEFT);
+ category.setText("Category");
+ category.setWidth(60);
+ category.setMoveable(true);
+ category.addListener(SWT.Selection, new SortListener(this,resultTable,5,8));
+ TableColumn type = new TableColumn(resultTable,SWT.LEFT);
+ type.setText("Type");
+ type.setWidth(60);
+ type.setMoveable(true);
+ type.addListener(SWT.Selection, new SortListener(this,resultTable,6,8));
+ }
+
+ }
+ private void saveButtonWidgetSelected(SelectionEvent evt) {
+ try{
+ int OwnerId = model.getOwnerid(ownerId.getText());
+ Media media = new Media();
+ media.id = new Integer(id.getText()).intValue();
+ media.name = title.getText();
+ media.duration = duration.getText();
+ media.lastEdit = new Date(System.currentTimeMillis()).toString();
+ media.path = path.getText();
+ media.fileName = name.getText();
+ /* t.b.d.
+ author.getText();
+ album.getText();
+ category.getText();
+ year.getText();
+ new Integer(aBitrate.getText()).intValue();
+ new Integer(vBitrate.getText()).intValue();
+ resolution.getText();
+ OwnerId;
+ */
+ if (model.changeMedia(media, Action.EDIT)) {
+ int select=resultTable2.getSelectionIndex();
+ TableItem item= new TableItem(resultTable2,SWT.NONE,select);
+ item.setText(0,new Integer(media.id).toString());
+ item.setText(1,media.name);
+ /* t.b.d. read from string props
+ item.setText(2,media.author.name);
+ item.setText(3,media.album);
+ item.setText(4,media.year);
+ item.setText(5,media.category);
+ */
+ item.setText(6,model.getTypeName(media.type));
+ resultTable2.remove(select+1);
+ resultTable2.setSelection(select);
+ changeComposite.setVisible(false);
+ deleteButton.setVisible(false);
+ }
+ }catch (Exception e){
+ System.out.println("Exception in SaveButton"+e);
+ }
+ }
+
+ private void searchPressed(Text searchField,Button videoCheckBox,Button audioCheckBox,CLabel returnNum,int tab){
+ String search = searchField.getText();
+ int returnVal;
+ ArrayList<MediaType> types = new ArrayList<MediaType>();
+
+ 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);
+ ArrayList<Media>resultList = 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<ClientInfo> 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);
+ }
+
+}
+
diff --git a/src/YalpClients/SwtClient/GUI/InitGUI.java b/src/YalpClients/SwtClient/GUI/InitGUI.java index e432c50..6b1fa51 100644 --- a/src/YalpClients/SwtClient/GUI/InitGUI.java +++ b/src/YalpClients/SwtClient/GUI/InitGUI.java @@ -1,58 +1,58 @@ -/* - * 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.widgets.Display; -import org.eclipse.swt.widgets.Shell; - -import YalpClients.SwtClient.*; -import YalpInterfaces.AccessRights; - -/* - * Class InitGUI - * - * <em></em> - * - * @author Volker Dahnke / Manuel Traut - * - * @version 1 02-04-2006<br> - * - */ - -public class InitGUI { - private Model model; - private Display display; - private int time = 1000; - - public InitGUI(Model model,AccessRights kind){ - this.model=model; - this.display = Display.getDefault(); - final Runnable timer = new Runnable() { - public void run() { - serverStillAlive(this); - } - }; - display.timerExec(time, timer); - - GUI gui= new GUI( - new Shell(display ,SWT.MIN), display, model, kind, SWT.NULL ); - gui.show(); - } - - public void serverStillAlive(Runnable timer){ - model.serverStillAlive(); - if (!this.model.getLogoff()){ - this.display.timerExec(time, timer); - } - } - -} +/*
+ * 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.widgets.Display;
+import org.eclipse.swt.widgets.Shell;
+
+import YalpClients.SwtClient.*;
+import YalpInterfaces.AccessRights;
+
+/*
+ * Class InitGUI
+ *
+ * <em></em>
+ *
+ * @author Volker Dahnke / Manuel Traut
+ *
+ * @version 1 02-04-2006<br>
+ *
+ */
+
+public class InitGUI {
+ private Model model;
+ private Display display;
+ private int time = 1000;
+
+ public InitGUI(Model model,AccessRights kind){
+ this.model=model;
+ this.display = Display.getDefault();
+ final Runnable timer = new Runnable() {
+ public void run() {
+ serverStillAlive(this);
+ }
+ };
+ display.timerExec(time, timer);
+
+ GUI gui= new GUI(
+ new Shell(display ,SWT.MIN), display, model, kind, SWT.NULL );
+ gui.show();
+ }
+
+ public void serverStillAlive(Runnable timer){
+ model.serverStillAlive();
+ if (!this.model.getLogoff()){
+ this.display.timerExec(time, timer);
+ }
+ }
+
+}
diff --git a/src/YalpClients/SwtClient/GUI/LoadDialog.java b/src/YalpClients/SwtClient/GUI/LoadDialog.java index fbe068b..dcdc4a8 100644 --- a/src/YalpClients/SwtClient/GUI/LoadDialog.java +++ b/src/YalpClients/SwtClient/GUI/LoadDialog.java @@ -1,110 +1,110 @@ -/* - * 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.*; - -/* - * Class LoadDialog - * - * <em></em> - * - * @author Volker Dahnke / Manuel Traut - * - * @version 1 02-04-2006<br> - */ -public class LoadDialog extends Composite{ - - { - //Register as a resource user - SWTResourceManager will - //handle the obtaining and disposing of resources - SWTResourceManager.registerResourceUser(this); - } - - private CLabel cLabel1; - private CLabel cLabel2; - private CLabel cLabel3; - private Shell parent; - - public LoadDialog(Composite parent, int style) { - super(parent, style); - this.parent=(Shell)parent; - initDialog(); - } - - private void initDialog(){ - GridLayout thisLayout = new GridLayout(); - thisLayout.makeColumnsEqualWidth = true; - this.setLayout(thisLayout); - this.setSize(300,170); - { - Composite composite = new Composite(this, SWT.NONE); - FormLayout compositeLayout = new FormLayout(); - composite.setLayout(compositeLayout); - GridData compositeLData = new GridData(); - compositeLData.widthHint = 287; - compositeLData.heightHint = 165; - composite.setLayoutData(compositeLData); - composite.setVisible(true); - { - cLabel3 = new CLabel(composite, SWT.LEFT); - cLabel3.setText("Copyright (c) 2006 Manuel Traut and Volker Dahnke"); - FormData cLabel3LData = new FormData(); - cLabel3LData.width = 300; - cLabel3LData.height = 20; - cLabel3LData.left = new FormAttachment(0, 1000, 0); - cLabel3LData.top = new FormAttachment(0, 1000, 145); - cLabel3.setLayoutData(cLabel3LData); - cLabel3.setFont(SWTResourceManager.getFont("Times", 7, 0, false, false)); - } - { - cLabel2 = new CLabel(composite, SWT.CENTER); - cLabel2.setText("Loading..."); - FormData cLabel2LData = new FormData(); - cLabel2LData.width = 105; - cLabel2LData.height = 25; - cLabel2LData.left = new FormAttachment(0, 1000, 91); - cLabel2LData.top = new FormAttachment(0, 1000, 123); - cLabel2.setLayoutData(cLabel2LData); - cLabel2.setFont(SWTResourceManager.getFont("Times", 12, 1, false, false)); - } - { - cLabel1 = new CLabel(composite, SWT.CENTER); - FormData cLabel1LData = new FormData(); - cLabel1LData.width = 200; - cLabel1LData.height = 120; - cLabel1LData.left = new FormAttachment(0, 1000, 40); - cLabel1LData.top = new FormAttachment(0, 1000, 0); - cLabel1.setLayoutData(cLabel1LData); - cLabel1.setImage(new Image(this.getDisplay(),"img/yalpV2.gif")); - } - - } - } - - public void show(){ - 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); - this.parent.open(); - } - - public void close(){ - this.parent.close(); - } -} +/*
+ * 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.*;
+
+/*
+ * Class LoadDialog
+ *
+ * <em></em>
+ *
+ * @author Volker Dahnke / Manuel Traut
+ *
+ * @version 1 02-04-2006<br>
+ */
+public class LoadDialog extends Composite{
+
+ {
+ //Register as a resource user - SWTResourceManager will
+ //handle the obtaining and disposing of resources
+ SWTResourceManager.registerResourceUser(this);
+ }
+
+ private CLabel cLabel1;
+ private CLabel cLabel2;
+ private CLabel cLabel3;
+ private Shell parent;
+
+ public LoadDialog(Composite parent, int style) {
+ super(parent, style);
+ this.parent=(Shell)parent;
+ initDialog();
+ }
+
+ private void initDialog(){
+ GridLayout thisLayout = new GridLayout();
+ thisLayout.makeColumnsEqualWidth = true;
+ this.setLayout(thisLayout);
+ this.setSize(300,170);
+ {
+ Composite composite = new Composite(this, SWT.NONE);
+ FormLayout compositeLayout = new FormLayout();
+ composite.setLayout(compositeLayout);
+ GridData compositeLData = new GridData();
+ compositeLData.widthHint = 287;
+ compositeLData.heightHint = 165;
+ composite.setLayoutData(compositeLData);
+ composite.setVisible(true);
+ {
+ cLabel3 = new CLabel(composite, SWT.LEFT);
+ cLabel3.setText("Copyright (c) 2006 Manuel Traut and Volker Dahnke");
+ FormData cLabel3LData = new FormData();
+ cLabel3LData.width = 300;
+ cLabel3LData.height = 20;
+ cLabel3LData.left = new FormAttachment(0, 1000, 0);
+ cLabel3LData.top = new FormAttachment(0, 1000, 145);
+ cLabel3.setLayoutData(cLabel3LData);
+ cLabel3.setFont(SWTResourceManager.getFont("Times", 7, 0, false, false));
+ }
+ {
+ cLabel2 = new CLabel(composite, SWT.CENTER);
+ cLabel2.setText("Loading...");
+ FormData cLabel2LData = new FormData();
+ cLabel2LData.width = 105;
+ cLabel2LData.height = 25;
+ cLabel2LData.left = new FormAttachment(0, 1000, 91);
+ cLabel2LData.top = new FormAttachment(0, 1000, 123);
+ cLabel2.setLayoutData(cLabel2LData);
+ cLabel2.setFont(SWTResourceManager.getFont("Times", 12, 1, false, false));
+ }
+ {
+ cLabel1 = new CLabel(composite, SWT.CENTER);
+ FormData cLabel1LData = new FormData();
+ cLabel1LData.width = 200;
+ cLabel1LData.height = 120;
+ cLabel1LData.left = new FormAttachment(0, 1000, 40);
+ cLabel1LData.top = new FormAttachment(0, 1000, 0);
+ cLabel1.setLayoutData(cLabel1LData);
+ cLabel1.setImage(new Image(this.getDisplay(),"img/yalpV2.gif"));
+ }
+
+ }
+ }
+
+ public void show(){
+ 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);
+ this.parent.open();
+ }
+
+ public void close(){
+ this.parent.close();
+ }
+}
diff --git a/src/YalpClients/SwtClient/GUI/SWTResourceManager.java b/src/YalpClients/SwtClient/GUI/SWTResourceManager.java index 258c883..87dffc3 100644 --- a/src/YalpClients/SwtClient/GUI/SWTResourceManager.java +++ b/src/YalpClients/SwtClient/GUI/SWTResourceManager.java @@ -1,145 +1,145 @@ -package YalpClients.SwtClient.GUI; - -import java.util.HashMap; -import java.util.Iterator; -import java.util.Vector; - -import org.eclipse.swt.events.DisposeEvent; -import org.eclipse.swt.events.DisposeListener; -import org.eclipse.swt.graphics.Color; -import org.eclipse.swt.graphics.Cursor; -import org.eclipse.swt.graphics.Font; -import org.eclipse.swt.graphics.FontData; -import org.eclipse.swt.graphics.Image; -import org.eclipse.swt.widgets.Control; -import org.eclipse.swt.widgets.Display; -import org.eclipse.swt.widgets.Widget; - -/* - * Class to manage SWT resources (Font, Color, Image and Cursor) - * There are no restrictions on the use of this code. - * - * You may change this code and your changes will not be overwritten, - * but if you change the version number below then this class will be - * completely overwritten by Jigloo. - * #SWTResourceManager:version4.0.0# - */ -public class SWTResourceManager { - - private static HashMap resources = new HashMap(); - private static Vector users = new Vector(); - private static SWTResourceManager instance = new SWTResourceManager(); - - private static DisposeListener disposeListener = new DisposeListener() { - public void widgetDisposed(DisposeEvent e) { - users.remove(e.getSource()); - if (users.size() == 0) - dispose(); - } - }; - - /* - * This method should be called by *all* Widgets which use resources - * provided by this SWTResourceManager. When widgets are disposed, - * they are removed from the "users" Vector, and when no more - * registered Widgets are left, all resources are disposed. - * <P> - * If this method is not called for all Widgets then it should not be called - * at all, and the "dispose" method should be explicitly called after all - * resources are no longer being used. - */ - public static void registerResourceUser(Widget widget) { - if (users.contains(widget)) - return; - users.add(widget); - widget.addDisposeListener(disposeListener); - } - - public static void dispose() { - Iterator it = resources.keySet().iterator(); - while (it.hasNext()) { - Object resource = resources.get(it.next()); - if (resource instanceof Font) - ((Font) resource).dispose(); - else if (resource instanceof Color) - ((Color) resource).dispose(); - else if (resource instanceof Image) - ((Image) resource).dispose(); - else if (resource instanceof Cursor) - ((Cursor) resource).dispose(); - } - resources.clear(); - } - - public static Font getFont(String name, int size, int style) { - return getFont(name, size, style, false, false); - } - - public static Font getFont(String name, int size, int style, boolean strikeout, boolean underline) { - String fontName = name + "|" + size + "|" + style + "|" + strikeout + "|" + underline; - if (resources.containsKey(fontName)) - return (Font) resources.get(fontName); - FontData fd = new FontData(name, size, style); - if (strikeout || underline) { - try { - Class lfCls = Class.forName("org.eclipse.swt.internal.win32.LOGFONT"); - Object lf = FontData.class.getField("data").get(fd); - if (lf != null && lfCls != null) { - if (strikeout) - lfCls.getField("lfStrikeOut").set(lf, new Byte((byte) 1)); - if (underline) - lfCls.getField("lfUnderline").set(lf, new Byte((byte) 1)); - } - } catch (Throwable e) { - System.err.println( - "Unable to set underline or strikeout" + " (probably on a non-Windows platform). " + e); - } - } - Font font = new Font(Display.getDefault(), fd); - resources.put(fontName, font); - return font; - } - - public static Image getImage(String url, Control widget) { - Image img = getImage(url); - if(img != null && widget != null) - img.setBackground(widget.getBackground()); - return img; - } - - public static Image getImage(String url) { - try { - url = url.replace('\\', '/'); - if (url.startsWith("/")) - url = url.substring(1); - if (resources.containsKey(url)) - return (Image) resources.get(url); - Image img = new Image(Display.getDefault(), instance.getClass().getClassLoader().getResourceAsStream(url)); - if (img != null) - resources.put(url, img); - return img; - } catch (Exception e) { - System.err.println("SWTResourceManager.getImage: Error getting image "+url+", "+e); - return null; - } - } - - public static Color getColor(int red, int green, int blue) { - String name = "COLOR:" + red + "," + green + "," + blue; - if (resources.containsKey(name)) - return (Color) resources.get(name); - Color color = new Color(Display.getDefault(), red, green, blue); - resources.put(name, color); - return color; - } - - public static Cursor getCursor(int type) { - String name = "CURSOR:" + type; - if (resources.containsKey(name)) - return (Cursor) resources.get(name); - Cursor cursor = new Cursor(Display.getDefault(), type); - resources.put(name, cursor); - return cursor; - } - -} +package YalpClients.SwtClient.GUI;
+
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.Vector;
+
+import org.eclipse.swt.events.DisposeEvent;
+import org.eclipse.swt.events.DisposeListener;
+import org.eclipse.swt.graphics.Color;
+import org.eclipse.swt.graphics.Cursor;
+import org.eclipse.swt.graphics.Font;
+import org.eclipse.swt.graphics.FontData;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.Widget;
+
+/*
+ * Class to manage SWT resources (Font, Color, Image and Cursor)
+ * There are no restrictions on the use of this code.
+ *
+ * You may change this code and your changes will not be overwritten,
+ * but if you change the version number below then this class will be
+ * completely overwritten by Jigloo.
+ * #SWTResourceManager:version4.0.0#
+ */
+public class SWTResourceManager {
+
+ private static HashMap resources = new HashMap();
+ private static Vector users = new Vector();
+ private static SWTResourceManager instance = new SWTResourceManager();
+
+ private static DisposeListener disposeListener = new DisposeListener() {
+ public void widgetDisposed(DisposeEvent e) {
+ users.remove(e.getSource());
+ if (users.size() == 0)
+ dispose();
+ }
+ };
+
+ /*
+ * This method should be called by *all* Widgets which use resources
+ * provided by this SWTResourceManager. When widgets are disposed,
+ * they are removed from the "users" Vector, and when no more
+ * registered Widgets are left, all resources are disposed.
+ * <P>
+ * If this method is not called for all Widgets then it should not be called
+ * at all, and the "dispose" method should be explicitly called after all
+ * resources are no longer being used.
+ */
+ public static void registerResourceUser(Widget widget) {
+ if (users.contains(widget))
+ return;
+ users.add(widget);
+ widget.addDisposeListener(disposeListener);
+ }
+
+ public static void dispose() {
+ Iterator it = resources.keySet().iterator();
+ while (it.hasNext()) {
+ Object resource = resources.get(it.next());
+ if (resource instanceof Font)
+ ((Font) resource).dispose();
+ else if (resource instanceof Color)
+ ((Color) resource).dispose();
+ else if (resource instanceof Image)
+ ((Image) resource).dispose();
+ else if (resource instanceof Cursor)
+ ((Cursor) resource).dispose();
+ }
+ resources.clear();
+ }
+
+ public static Font getFont(String name, int size, int style) {
+ return getFont(name, size, style, false, false);
+ }
+
+ public static Font getFont(String name, int size, int style, boolean strikeout, boolean underline) {
+ String fontName = name + "|" + size + "|" + style + "|" + strikeout + "|" + underline;
+ if (resources.containsKey(fontName))
+ return (Font) resources.get(fontName);
+ FontData fd = new FontData(name, size, style);
+ if (strikeout || underline) {
+ try {
+ Class lfCls = Class.forName("org.eclipse.swt.internal.win32.LOGFONT");
+ Object lf = FontData.class.getField("data").get(fd);
+ if (lf != null && lfCls != null) {
+ if (strikeout)
+ lfCls.getField("lfStrikeOut").set(lf, new Byte((byte) 1));
+ if (underline)
+ lfCls.getField("lfUnderline").set(lf, new Byte((byte) 1));
+ }
+ } catch (Throwable e) {
+ System.err.println(
+ "Unable to set underline or strikeout" + " (probably on a non-Windows platform). " + e);
+ }
+ }
+ Font font = new Font(Display.getDefault(), fd);
+ resources.put(fontName, font);
+ return font;
+ }
+
+ public static Image getImage(String url, Control widget) {
+ Image img = getImage(url);
+ if(img != null && widget != null)
+ img.setBackground(widget.getBackground());
+ return img;
+ }
+
+ public static Image getImage(String url) {
+ try {
+ url = url.replace('\\', '/');
+ if (url.startsWith("/"))
+ url = url.substring(1);
+ if (resources.containsKey(url))
+ return (Image) resources.get(url);
+ Image img = new Image(Display.getDefault(), instance.getClass().getClassLoader().getResourceAsStream(url));
+ if (img != null)
+ resources.put(url, img);
+ return img;
+ } catch (Exception e) {
+ System.err.println("SWTResourceManager.getImage: Error getting image "+url+", "+e);
+ return null;
+ }
+ }
+
+ public static Color getColor(int red, int green, int blue) {
+ String name = "COLOR:" + red + "," + green + "," + blue;
+ if (resources.containsKey(name))
+ return (Color) resources.get(name);
+ Color color = new Color(Display.getDefault(), red, green, blue);
+ resources.put(name, color);
+ return color;
+ }
+
+ public static Cursor getCursor(int type) {
+ String name = "CURSOR:" + type;
+ if (resources.containsKey(name))
+ return (Cursor) resources.get(name);
+ Cursor cursor = new Cursor(Display.getDefault(), type);
+ resources.put(name, cursor);
+ return cursor;
+ }
+
+}
diff --git a/src/YalpClients/SwtClient/GUI/SortListener.java b/src/YalpClients/SwtClient/GUI/SortListener.java index 78598d6..a2ff35a 100644 --- a/src/YalpClients/SwtClient/GUI/SortListener.java +++ b/src/YalpClients/SwtClient/GUI/SortListener.java @@ -1,63 +1,63 @@ -/* - * 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 java.text.Collator; -import java.util.Locale; -import org.eclipse.swt.SWT; -import org.eclipse.swt.widgets.*; - -/* - * Class SortListener - * - * <em></em> - * - * @author Volker Dahnke / Manuel Traut - * - * @version 1 02-04-2006<br> - */ -public class SortListener implements Listener{ - private Table table; - private int colum,numColum; - private GUI gui; - - public SortListener(GUI gui,Table table,int colum,int numColum){ - this.colum=colum; - this.numColum=numColum; - this.table=table; - this.gui=gui; - } - - public void handleEvent(Event e) { - TableItem[] items = table.getItems(); - Collator collator = Collator.getInstance(Locale.getDefault()); - for (int i = 1; i < items.length; i++) { - String value1 = items[i].getText(colum); - for (int j = 0; j < i; j++) { - String value2 = items[j].getText(colum); - if (collator.compare(value1, value2) < 0) { - String[] values= new String[numColum]; - for(int g=0;g<numColum;g++){ - values[g]= items[i].getText(g); - } - items[i].dispose(); - TableItem item = new TableItem(table, SWT.NONE, j); - item.setText(values); - items = table.getItems(); - break; - } - } - } - gui.changeComposite.setVisible(false); - table.setSelection(0); - } -} - +/*
+ * 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 java.text.Collator;
+import java.util.Locale;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.widgets.*;
+
+/*
+ * Class SortListener
+ *
+ * <em></em>
+ *
+ * @author Volker Dahnke / Manuel Traut
+ *
+ * @version 1 02-04-2006<br>
+ */
+public class SortListener implements Listener{
+ private Table table;
+ private int colum,numColum;
+ private GUI gui;
+
+ public SortListener(GUI gui,Table table,int colum,int numColum){
+ this.colum=colum;
+ this.numColum=numColum;
+ this.table=table;
+ this.gui=gui;
+ }
+
+ public void handleEvent(Event e) {
+ TableItem[] items = table.getItems();
+ Collator collator = Collator.getInstance(Locale.getDefault());
+ for (int i = 1; i < items.length; i++) {
+ String value1 = items[i].getText(colum);
+ for (int j = 0; j < i; j++) {
+ String value2 = items[j].getText(colum);
+ if (collator.compare(value1, value2) < 0) {
+ String[] values= new String[numColum];
+ for(int g=0;g<numColum;g++){
+ values[g]= items[i].getText(g);
+ }
+ items[i].dispose();
+ TableItem item = new TableItem(table, SWT.NONE, j);
+ item.setText(values);
+ items = table.getItems();
+ break;
+ }
+ }
+ }
+ gui.changeComposite.setVisible(false);
+ table.setSelection(0);
+ }
+}
+
diff --git a/src/YalpClients/SwtClient/GUI/StartDialog.java b/src/YalpClients/SwtClient/GUI/StartDialog.java index 8f828f0..11ecc7f 100644 --- a/src/YalpClients/SwtClient/GUI/StartDialog.java +++ b/src/YalpClients/SwtClient/GUI/StartDialog.java @@ -1,236 +1,236 @@ -/* - * 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 YalpClients.SwtClient.Model; -import YalpInterfaces.AccessRights; - -import org.eclipse.swt.SWT; -import org.eclipse.swt.custom.*; -import org.eclipse.swt.events.*; -import org.eclipse.swt.graphics.*; -import org.eclipse.swt.layout.*; -import org.eclipse.swt.widgets.*; - -/* - * Class StartDialog - * - * <em></em> - * - * @author Volker Dahnke / Manuel Traut - * - * @version 1 02-04-2006<br> - */ -public class StartDialog extends Composite { - - { - //Register as a resource user - SWTResourceManager will - //handle the obtaining and disposing of resources - SWTResourceManager.registerResourceUser(this); - } - private Display display; - private CLabel cLabel1; - private CLabel LogoLabel; - private Model model; - private Composite parent; - private Composite composite; - private CLabel logonLable; - private Button ok; - private Text passwd; - private Text username; - private CLabel passwdLable; - private CLabel usernameLable; - - - public StartDialog(Composite parent,Model model, int style) { - super(parent, style); - - this.parent=parent; - this.model=model; - this.display=Display.getDefault(); - initStartDialog(); - } - - private void initStartDialog(){ - GridLayout thisLayout = new GridLayout(); - thisLayout.makeColumnsEqualWidth = true; - this.setLayout(thisLayout); - this.setSize(300,150); - Listener listener =new Listener() { - public void handleEvent(org.eclipse.swt.widgets.Event evt) { - if (evt.character==SWT.CR){ - OkPressed(); - } - } - }; - addListener(SWT.KeyDown,listener); - { - composite = new Composite(this, SWT.NONE); - FormLayout compositeLayout = new FormLayout(); - composite.setLayout(compositeLayout); - GridData compositeLData = new GridData(); - compositeLData.widthHint = 287; - compositeLData.heightHint = 140; - composite.setLayoutData(compositeLData); - composite.setVisible(true); - composite.addKeyListener(new KeyAdapter() { - public void keyPressed(KeyEvent evt) { - if (evt.character==SWT.CR){ - OkPressed(); - } - } - }); - { - cLabel1 = new CLabel(composite, SWT.NONE); - FormData cLabel1LData = new FormData(); - cLabel1LData.width = 120; - cLabel1LData.height = 20; - cLabel1LData.left = new FormAttachment(0, 1000, 93); - cLabel1LData.top = new FormAttachment(0, 1000, 40); - cLabel1.setLayoutData(cLabel1LData); - Color col =display.getSystemColor(SWT.COLOR_RED); - cLabel1.setForeground(col); - cLabel1.setFont(SWTResourceManager.getFont("Times", 10, 1, false, false)); - } - { - LogoLabel = new CLabel(composite, SWT.NONE); - FormData LogoLabelLData = new FormData(); - LogoLabelLData.width = 70; - LogoLabelLData.height = 42; - LogoLabelLData.left = new FormAttachment(0, 1000, 77); - LogoLabelLData.top = new FormAttachment(0, 1000, 0); - LogoLabelLData.right = new FormAttachment(1000, 1000, -140); - LogoLabelLData.bottom = new FormAttachment(1000, 1000, -98); - LogoLabel.setLayoutData(LogoLabelLData); - LogoLabel.setImage(new Image(this.getDisplay(),"img/yalpV2_mittel.gif")); - } - { - logonLable = new CLabel(composite, SWT.BEGINNING); - logonLable.setText("Login"); - FormData logonLableLData = new FormData(); - logonLableLData.width = 70; - logonLableLData.height = 28; - logonLableLData.left = new FormAttachment(0, 1000, 147); - logonLableLData.top = new FormAttachment(0, 1000, 5); - logonLable.setLayoutData(logonLableLData); - logonLable.setFont(SWTResourceManager.getFont("Times", 14, 1, false, false)); - } - { - username = new Text(composite, SWT.NONE); - FormData usernameLData = new FormData(); - usernameLData.width = 117; - usernameLData.height = 15; - usernameLData.left = new FormAttachment(0, 1000, 120); - usernameLData.top = new FormAttachment(0, 1000, 65); - username.setLayoutData(usernameLData); - username.setFocus(); - username.addKeyListener(new KeyAdapter() { - public void keyPressed(KeyEvent evt) { - if (evt.character==SWT.CR){ - OkPressed(); - } - } - }); - } - { - passwd = new Text(composite, SWT.PASSWORD); - FormData passwdLData = new FormData(); - passwdLData.width = 117; - passwdLData.height = 15; - passwdLData.left = new FormAttachment(0, 1000, 120); - passwdLData.top = new FormAttachment(0, 1000, 88); - passwd.setLayoutData(passwdLData); - passwd.addKeyListener(new KeyAdapter() { - public void keyPressed(KeyEvent evt) { - if (evt.character==SWT.CR){ - OkPressed(); - } - } - }); - } - { - ok = new Button(composite, SWT.PUSH | SWT.CENTER); - ok.setText("OK"); - FormData okLData = new FormData(); - okLData.width = 65; - okLData.height = 21; - okLData.left = new FormAttachment(0, 1000, 110); - okLData.top = new FormAttachment(0, 1000, 115); - ok.setLayoutData(okLData); - ok.setFont(SWTResourceManager.getFont("Times", 10, 1, false, false)); - ok.addSelectionListener(new SelectionAdapter() { - public void widgetSelected(SelectionEvent evt) { - OkPressed(); - } - }); - } - { - passwdLable = new CLabel(composite, SWT.NONE); - passwdLable.setText("Password:"); - FormData passwdLableLData = new FormData(); - passwdLableLData.width = 70; - passwdLableLData.height = 20; - passwdLableLData.left = new FormAttachment(0, 1000, 35); - passwdLableLData.top = new FormAttachment(0, 1000, 83); - passwdLable.setLayoutData(passwdLableLData); - passwdLable.setFont(SWTResourceManager.getFont("Times", 10, 0, false, false)); - } - { - usernameLable = new CLabel(composite, SWT.NONE); - usernameLable.setText("Username:"); - FormData usernameLableLData = new FormData(); - usernameLableLData.width = 70; - usernameLableLData.height = 20; - usernameLableLData.left = new FormAttachment(0, 1000, 35); - usernameLableLData.top = new FormAttachment(0, 1000, 60); - usernameLable.setLayoutData(usernameLableLData); - usernameLable.setFont(SWTResourceManager.getFont("Times", 10, 0, false, false)); - } - } - this.layout(); - - } - private void OkPressed(){ - AccessRights kind; - kind = model.userVerify(username.getText(), passwd.getText()); - - if (kind.value() == AccessRights._NO_YALP_SERVER ) { - cLabel1.setText("Server offline"); - } else if (kind.value() == AccessRights._DENY ){ - cLabel1.setText("Access Denied"); - username.setText(""); - passwd.setText(""); - username.setFocus(); - } else { - display.close(); - InitGUI gui = new InitGUI(model, kind); - } - - } - - public void show(){ - ((Shell)this.parent).setImage(new Image(display,"img/yalpV2_klein.gif")); - ((Shell)this.parent).setText("yalp"); - 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(); - } - } - - -} +/*
+ * 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 YalpClients.SwtClient.Model;
+import YalpInterfaces.AccessRights;
+
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.custom.*;
+import org.eclipse.swt.events.*;
+import org.eclipse.swt.graphics.*;
+import org.eclipse.swt.layout.*;
+import org.eclipse.swt.widgets.*;
+
+/*
+ * Class StartDialog
+ *
+ * <em></em>
+ *
+ * @author Volker Dahnke / Manuel Traut
+ *
+ * @version 1 02-04-2006<br>
+ */
+public class StartDialog extends Composite {
+
+ {
+ //Register as a resource user - SWTResourceManager will
+ //handle the obtaining and disposing of resources
+ SWTResourceManager.registerResourceUser(this);
+ }
+ private Display display;
+ private CLabel cLabel1;
+ private CLabel LogoLabel;
+ private Model model;
+ private Composite parent;
+ private Composite composite;
+ private CLabel logonLable;
+ private Button ok;
+ private Text passwd;
+ private Text username;
+ private CLabel passwdLable;
+ private CLabel usernameLable;
+
+
+ public StartDialog(Composite parent,Model model, int style) {
+ super(parent, style);
+
+ this.parent=parent;
+ this.model=model;
+ this.display=Display.getDefault();
+ initStartDialog();
+ }
+
+ private void initStartDialog(){
+ GridLayout thisLayout = new GridLayout();
+ thisLayout.makeColumnsEqualWidth = true;
+ this.setLayout(thisLayout);
+ this.setSize(300,150);
+ Listener listener =new Listener() {
+ public void handleEvent(org.eclipse.swt.widgets.Event evt) {
+ if (evt.character==SWT.CR){
+ OkPressed();
+ }
+ }
+ };
+ addListener(SWT.KeyDown,listener);
+ {
+ composite = new Composite(this, SWT.NONE);
+ FormLayout compositeLayout = new FormLayout();
+ composite.setLayout(compositeLayout);
+ GridData compositeLData = new GridData();
+ compositeLData.widthHint = 287;
+ compositeLData.heightHint = 140;
+ composite.setLayoutData(compositeLData);
+ composite.setVisible(true);
+ composite.addKeyListener(new KeyAdapter() {
+ public void keyPressed(KeyEvent evt) {
+ if (evt.character==SWT.CR){
+ OkPressed();
+ }
+ }
+ });
+ {
+ cLabel1 = new CLabel(composite, SWT.NONE);
+ FormData cLabel1LData = new FormData();
+ cLabel1LData.width = 120;
+ cLabel1LData.height = 20;
+ cLabel1LData.left = new FormAttachment(0, 1000, 93);
+ cLabel1LData.top = new FormAttachment(0, 1000, 40);
+ cLabel1.setLayoutData(cLabel1LData);
+ Color col =display.getSystemColor(SWT.COLOR_RED);
+ cLabel1.setForeground(col);
+ cLabel1.setFont(SWTResourceManager.getFont("Times", 10, 1, false, false));
+ }
+ {
+ LogoLabel = new CLabel(composite, SWT.NONE);
+ FormData LogoLabelLData = new FormData();
+ LogoLabelLData.width = 70;
+ LogoLabelLData.height = 42;
+ LogoLabelLData.left = new FormAttachment(0, 1000, 77);
+ LogoLabelLData.top = new FormAttachment(0, 1000, 0);
+ LogoLabelLData.right = new FormAttachment(1000, 1000, -140);
+ LogoLabelLData.bottom = new FormAttachment(1000, 1000, -98);
+ LogoLabel.setLayoutData(LogoLabelLData);
+ LogoLabel.setImage(new Image(this.getDisplay(),"img/yalpV2_mittel.gif"));
+ }
+ {
+ logonLable = new CLabel(composite, SWT.BEGINNING);
+ logonLable.setText("Login");
+ FormData logonLableLData = new FormData();
+ logonLableLData.width = 70;
+ logonLableLData.height = 28;
+ logonLableLData.left = new FormAttachment(0, 1000, 147);
+ logonLableLData.top = new FormAttachment(0, 1000, 5);
+ logonLable.setLayoutData(logonLableLData);
+ logonLable.setFont(SWTResourceManager.getFont("Times", 14, 1, false, false));
+ }
+ {
+ username = new Text(composite, SWT.NONE);
+ FormData usernameLData = new FormData();
+ usernameLData.width = 117;
+ usernameLData.height = 15;
+ usernameLData.left = new FormAttachment(0, 1000, 120);
+ usernameLData.top = new FormAttachment(0, 1000, 65);
+ username.setLayoutData(usernameLData);
+ username.setFocus();
+ username.addKeyListener(new KeyAdapter() {
+ public void keyPressed(KeyEvent evt) {
+ if (evt.character==SWT.CR){
+ OkPressed();
+ }
+ }
+ });
+ }
+ {
+ passwd = new Text(composite, SWT.PASSWORD);
+ FormData passwdLData = new FormData();
+ passwdLData.width = 117;
+ passwdLData.height = 15;
+ passwdLData.left = new FormAttachment(0, 1000, 120);
+ passwdLData.top = new FormAttachment(0, 1000, 88);
+ passwd.setLayoutData(passwdLData);
+ passwd.addKeyListener(new KeyAdapter() {
+ public void keyPressed(KeyEvent evt) {
+ if (evt.character==SWT.CR){
+ OkPressed();
+ }
+ }
+ });
+ }
+ {
+ ok = new Button(composite, SWT.PUSH | SWT.CENTER);
+ ok.setText("OK");
+ FormData okLData = new FormData();
+ okLData.width = 65;
+ okLData.height = 21;
+ okLData.left = new FormAttachment(0, 1000, 110);
+ okLData.top = new FormAttachment(0, 1000, 115);
+ ok.setLayoutData(okLData);
+ ok.setFont(SWTResourceManager.getFont("Times", 10, 1, false, false));
+ ok.addSelectionListener(new SelectionAdapter() {
+ public void widgetSelected(SelectionEvent evt) {
+ OkPressed();
+ }
+ });
+ }
+ {
+ passwdLable = new CLabel(composite, SWT.NONE);
+ passwdLable.setText("Password:");
+ FormData passwdLableLData = new FormData();
+ passwdLableLData.width = 70;
+ passwdLableLData.height = 20;
+ passwdLableLData.left = new FormAttachment(0, 1000, 35);
+ passwdLableLData.top = new FormAttachment(0, 1000, 83);
+ passwdLable.setLayoutData(passwdLableLData);
+ passwdLable.setFont(SWTResourceManager.getFont("Times", 10, 0, false, false));
+ }
+ {
+ usernameLable = new CLabel(composite, SWT.NONE);
+ usernameLable.setText("Username:");
+ FormData usernameLableLData = new FormData();
+ usernameLableLData.width = 70;
+ usernameLableLData.height = 20;
+ usernameLableLData.left = new FormAttachment(0, 1000, 35);
+ usernameLableLData.top = new FormAttachment(0, 1000, 60);
+ usernameLable.setLayoutData(usernameLableLData);
+ usernameLable.setFont(SWTResourceManager.getFont("Times", 10, 0, false, false));
+ }
+ }
+ this.layout();
+
+ }
+ private void OkPressed(){
+ AccessRights kind;
+ kind = model.userVerify(username.getText(), passwd.getText());
+
+ if (kind.value() == AccessRights._NO_YALP_SERVER ) {
+ cLabel1.setText("Server offline");
+ } else if (kind.value() == AccessRights._DENY ){
+ cLabel1.setText("Access Denied");
+ username.setText("");
+ passwd.setText("");
+ username.setFocus();
+ } else {
+ display.close();
+ InitGUI gui = new InitGUI(model, kind);
+ }
+
+ }
+
+ public void show(){
+ ((Shell)this.parent).setImage(new Image(display,"img/yalpV2_klein.gif"));
+ ((Shell)this.parent).setText("yalp");
+ 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();
+ }
+ }
+
+
+}
diff --git a/src/YalpClients/SwtClient/Model.java b/src/YalpClients/SwtClient/Model.java index 0ebc09c..5423dc4 100755 --- a/src/YalpClients/SwtClient/Model.java +++ b/src/YalpClients/SwtClient/Model.java @@ -1,759 +1,759 @@ -/* - * 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; - -import YalpInterfaces.*; -import YalpClients.*; - -import java.beans.XMLDecoder; -import java.beans.XMLEncoder; -import java.io.*; -import java.net.Inet4Address; -import java.net.MalformedURLException; -import java.net.UnknownHostException; -import java.sql.SQLException; -import java.util.ArrayList; - -import org.eclipse.swt.SWT; -import org.eclipse.swt.widgets.Display; -import org.eclipse.swt.widgets.MessageBox; -import org.eclipse.swt.widgets.Shell; - -import org.omg.CosNaming.*; -import org.omg.CosNaming.NamingContextPackage.*; -import org.omg.CORBA.*; - -/* - * Class Model - * - * <em>Implementiert die Schnittstellenfunktionen zur Steuerung des Servers - * (Datenbankinhalte schreiben, lesen; Streaming steuern</em> - * - * @author Volker Dahnke / Manuel Traut - * - * @version 0.6 14-12-2005<br> - * - * @see client.GUI - */ - -public class Model { - - public ServerControlInterface srvCon; - private Process vlcPlayer; - private Output actualStream = new Output(); - private Output streamInfo = new Output(); - private ArrayList<Media> findMedia = new ArrayList<Media>(); - private ArrayList<Media> editMedia = new ArrayList<Media>(); - private ArrayList<Media> toPlaylist = new ArrayList<Media>(); - private ArrayList<Media> playList = new ArrayList<Media>(); - private ArrayList<YalpUser> userList = new ArrayList<YalpUser>(); - private ClientConfiguration settings; - private String clientIP; - private String curPasswd; - private AccessRights userGroup=AccessRights.DENY; - private String userName; - private Boolean playback = false; - private Boolean logoff= false; - private Session session = new Session(); -/* - * Instances srvConnection to Registry, DbConnection, ServerControl - * and VlcStreamer. Also instances Class variables - */ - public Model(String[] argv) { - - this.settings=new ClientConfiguration(); - loadConfig("ClientConfiguration.xml"); - writeConfig("ClientConfiguration.xml"); - - try { - ORB orb = ORB.init(argv, null); - - org.omg.CORBA.Object objRef = - orb.resolve_initial_references("NameService"); - - NamingContextExt ncRef = NamingContextExtHelper.narrow(objRef); - - String name = "YALP_Server"; - srvCon = ServerControlInterfaceHelper.narrow(ncRef.resolve_str(name)); - } catch (Exception e) {// DEBUG - String errorStr="couldn't connect to YALP Server"; - - MessageBox messageBox = new MessageBox( - new Shell(Display.getDefault(),SWT.MIN), SWT.OK ); - - System.out.println(e); - messageBox.setMessage(errorStr); - messageBox.open(); - System.exit(0); - } - - // determine client IP Adress - try { - this.clientIP = Inet4Address.getLocalHost().getHostAddress(); - System.out.println(this.clientIP); - } catch (UnknownHostException e) { - String errorStr = "Model.model: determine IP failed"; - - MessageBox messageBox = new MessageBox( - new Shell(Display.getDefault(),SWT.MIN), SWT.OK ); - - System.out.println(errorStr); - messageBox.setMessage(errorStr); - messageBox.open(); - System.exit(0); - } - this.userList = new ArrayList<YalpUser>(); - this.playList = new ArrayList<Media>(); - this.toPlaylist = new ArrayList<Media>(); - } - -/* - * write Configuration to XML File - * - * @param fileName - * @return boolean: true if succesful - */ - public boolean writeConfig(String fileName) { - try { - FileOutputStream srvConfigFile = new FileOutputStream(fileName); - XMLEncoder srvConfigWriter = new XMLEncoder(srvConfigFile); - srvConfigWriter.writeObject(settings.serverIP); - srvConfigWriter.writeObject(settings.classServerPort); - srvConfigWriter.writeObject(settings.registryPort); - srvConfigWriter.writeObject(settings.vlcCommand); - srvConfigWriter.close(); - } catch (FileNotFoundException fnfe) { - return false; - } - return true; - } - -/* - * load Configuration from XML File if possible - * - * @param fileName - * @return boolean: true if succesful - */ - public boolean loadConfig(String fileName){ - try{ - FileInputStream srvConfigFile = new FileInputStream(fileName); - XMLDecoder srvConfigLoader = new XMLDecoder(srvConfigFile); - System.out.println(srvConfigFile); - settings.serverIP = (String)srvConfigLoader.readObject(); - settings.classServerPort= (Integer)srvConfigLoader.readObject(); - settings.registryPort = (Integer)srvConfigLoader.readObject(); - settings.vlcCommand = (String)srvConfigLoader.readObject(); - srvConfigLoader.close(); - } catch(FileNotFoundException fnfe) { - System.out.println("Configuration not found, loading defaults..."); - return false; - } catch(ClassCastException cce) { - System.out.println("Errors in Configuration, loading defaults..."); - return false; - } - return true; - } - -/* - * get acutal srvConfig object - * - * @return ClientConfiguration: aktuelle Konfiguration - */ - public ClientConfiguration getConfig(){ - return this.settings; - } - -/* - * setzen und speichern eines ClientConfiguration Files - * - * @param set - * ClientConfiguration.xml - * @return boolean: true if succesful written Configuration - */ - public boolean setConfig(ClientConfiguration set){ - this.settings = set; - return this.writeConfig("ClientConfiguration.xml"); - } - -/* - * Sends YalpUsername and passwd to Server and returns YalpUsergroup - * - * @param username - * @param passwd - * @return AccessRights - */ - public AccessRights userVerify(String username,String passwd){ - this.userName=username; - this.curPasswd = passwd; - YalpErrorHolder err = new YalpErrorHolder(); - SessionHolder sess = new SessionHolder(); - try{ - // log on server - this.srvCon.clientLogon(this.userName,passwd,this.clientIP,sess,err); - this.session = sess.value; - this.userGroup = sess.value.me.level; - /* - } catch (RemoteException e) { - System.out.println("client.Model: Logon on Server failed 1"+ e); - e.printStackTrace(); - System.out.println("client.Model: Logon on Server failed 1"); - } catch (MalformedURLException e) { - System.out.println("client.Model: Logon on Server failed 2"); - } catch (SQLException e) { - System.out.println("client.Model: Logon on Server failed 3"); - } catch (NotBoundException e) { - System.out.println("client.Model: Logon on Server failed 4"); - */ - }catch(NullPointerException e){ - System.out.println("YALP Server couldn't be reached"); - this.userGroup = AccessRights.NO_YALP_SERVER; - } - return this.userGroup; - } - -/* - * Gets a list with all YalpUsers from the server - * - * @return ArrayList<YalpUser> all registered YalpUsers - */ - public ArrayList<YalpUser> getUser(){ - YalpErrorHolder err = new YalpErrorHolder(); - try{ - UsersHolder usr = new UsersHolder(); - this.srvCon.getUser(usr, err); - this.userList = new ArrayList<YalpUser>(usr.value.length); - for(int i = 0; i < usr.value.length; i++) - this.userList.add(usr.value[i]); - }catch(Exception e){ - System.out.println("Exceoption in Model userList "+ e); - } - return userList; - } - -/* - * Sends User change request to server - * - * @param user - * Configuration with changes on specific YalpUser - */ - public void changeUser(YalpUser user, String passwd, Action action) { - YalpErrorHolder err = new YalpErrorHolder(); - try{ - this.srvCon.changeUser( user, - passwd, - action, - err ); - System.out.println(err.value.descr); - }catch(Exception e){ - System.out.println("Exceoption in Model changeUser "+ e); - } - } - -/* - * Sends Media change request to server and refreshes Model data - * - * @param media - * to change - * @return boolean: succesful changed media - */ - public Boolean changeMedia(Media media, Action action){ - YalpErrorHolder err = new YalpErrorHolder(); - try{ - this.srvCon.changeMedia(media, action, err); - if(err.value.code == YalpErrorCode.OK){ - Media result; - for (int i=0;i<this.editMedia.size();i++){ - result=this.editMedia.get(i); - /* t.b.d. alter to new db desgin - if (result.id==media.id){ - result.type=media.type; - result.title=media.title; - result.author=media.author; - result.album=media.album; - result.category=media.category; - result.year=media.year; - result.duration=media.duration; - result.aBitrate=media.aBitrate; - result.vBitrate=media.vBitrate; - result.resolution=media.resolution; - result.ownerId=media.ownerId; - result.lastEdit=media.lastEdit; - result.path=media.path; - result.name=media.name; - return true; - } - */ - } - } - } catch(Exception e) { - System.out.println("Exceoption in Model changeUser "+ e); - } - return false; - } - -/* - * adds Media with given id to Playlist - * - * @param id - */ - public void add2PlayList(int id){ - Boolean notfound=true; - for (int i=0;(i<this.findMedia.size())&& (notfound);i++){ - Media result=this.findMedia.get(i); - if (result.id==id){ - String name = result.name; - String path = result.path; - if(playback){ - this.add2Stream(name, path); - } - this.playList.add(result); - this.toPlaylist.add(result); - notfound=false; - } - } - } - -/* - * Removes Media with given id from Playlist - * - * @param id - */ - public void removeFromPlayList(int id){ - /* t.b.d. - this.playList.remItem(id); - this.toPlaylist.remove(id); - */ - } - -/* - * Returns List with items to play - * - * @return ArrayList<Media>: ArrayList to create Playlist from - */ - public ArrayList<Media> getToPlaylist(){ - return this.toPlaylist; - } - -/* - * Creates new Stream with actual playlist - * - * @return Streaminfo: about new created Stream, Client should use this, - * information to get the Information howto receive the stream - */ - public Output createOutput(){ - /* t.b.d. former createStream */ - streamInfo.outputAction = Action.CREATE; - Media[] a = {}; - streamInfo.playlist = this.playList.toArray(a); - return this.streamInfo; - } - -/* - * Sends search request to server and refreshes Model data - * - * @param request - * Search Request - * @param kind - * 1 - search in first Window; other ints: search in other window - * (admins edit view) - * @return int: number of results - */ - public int search(String request, ArrayList<MediaType> types, int kind){ - YalpErrorHolder err = new YalpErrorHolder(); - MediasHolder result = new MediasHolder(); - try{ - MediaType[] a = {}; - if (kind == 1){ - srvCon.search(request, types.toArray(a), result, err); - for(int i = 0; i < result.value.length; i++) - findMedia.add(result.value[i]); - return findMedia.size(); - } else { - srvCon.search(request, types.toArray(a), result, err); - for(int i = 0; i < result.value.length; i++) - editMedia.add(result.value[i]); - return editMedia.size(); - } - } catch(Exception e){ - e.printStackTrace(); - System.out.println("Exceoption in Model search "+ e); - return 0; - } - } - -/* - * Returns the search result - * - * @param kind - * 1 - for searchMedia of mainwindow; 2 - for searchMedia of editView - * @return ArrayList<Media>: last found medias - */ - - public ArrayList<Media> getMedia(int kind){ - if (kind==1) return this.findMedia; - else return this.editMedia; - } - -/* - * Retuns search result with given id - * - * @param id - * of the result - * @param kind - * 1 - for mainWindow, 2 for admins editView - * @return Media: searchMedia, with specified ID - */ - public Media getMediaWithId(int id,int kind){ - ArrayList<Media> resultList; - if (kind==1)resultList= this.findMedia; - else resultList=this.editMedia; - for (int i=0;(i<resultList.size());i++){ - Media result=resultList.get(i); - if (result.id==id){ - return result; - } - } - return null; - } - -/* - * Retuns id of YalpUser with given username - * - * @param username - * @return int: useriD - */ - public int getOwnerid(String username){ - ArrayList<YalpUser> ownerList =this.userList; - for (YalpUser owner:ownerList){ - if (owner.name.equals(username)){ - return owner.id; - } - } - return 0; - } - -/* - * Returns MediaType as string - * - * @param mediatype - * @return string - */ - public String getTypeName(MediaType type) - { - switch(type.value()) - { - case MediaType._IMAGE: - return "image"; - case MediaType._SOUND: - return "sound"; - case MediaType._VIDEO: - return "video"; - default: - return "unknown"; - } - } - -/* - * Returns AccessRights as string - * - * @param mediatype - * @return string - */ - public String accessRightsName(AccessRights type) - { - switch(type.value()) - { - case AccessRights._USER: - return "user"; - case AccessRights._ADMIN: - return "admin"; - case AccessRights._DENY: - return "no login"; - default: - return "unknown"; - } - } - - -/* - * Sets class variable actualStream to given value - * - * @param aStream - * stream to srvControl via play, pause, etc - */ - public void setActualStream(Output aStream){ - actualStream = aStream; - } - -/* - * Starts Video Lan Player - * - * @return boolean: true if vlc can be started and a stream is actualStream - */ - private boolean startVLC(){ - - String vlcCmd = "/usr/bin/vlc" + - " --ignore-config --no-qt-privacy-ask --video-on-top --qt-display-mode=2"; - //settings.vlcCommand -/* - switch (this.actualStream.getAccess()){ - case UDP: - */ - vlcCmd += " udp://@:"; - /* - break; - case HTTP: - vlcCmd += "http://"; - break; - default: - System.out.println( - "client.Model.startVLC: playback this type is not supported" ); - } -*/ - vlcCmd += "9993"; // actualStream.info.params; - System.out.println(vlcCmd); - - try { - this.vlcPlayer = Runtime.getRuntime().exec(vlcCmd); - } catch (IOException e) { - System.out.println("client.Model.startVLC: starting vlcPlayer failed"); - return false; - } - return true; - } - -/* - * Stops Video Lan Player - * - */ - private void stopVLC(){ - playback = false; - if(vlcPlayer != null) - vlcPlayer.destroy(); - } - -/* - * Starts playback of actual playlist - * - * @return void - */ - public boolean play(){ - - playback = true; - - actualStream.outputAction = Action.CREATE; - actualStream.info = new AccessInfo( "bam", - "bam", - "vlc", - "params", - AccessType.STREAM ); - - Media[] a = new Media[playList.size()]; - actualStream.playlist = playList.toArray(a); - actualStream.destIp = clientIP; - - YalpErrorHolder err = new YalpErrorHolder(); - - OutputHolder tmp = new OutputHolder(); - tmp.value = actualStream; - - srvCon.control(tmp, err); - actualStream = tmp.value; - - actualStream.outputAction = Action.START; - OutputHolder tmp2 = new OutputHolder(actualStream); - srvCon.control(tmp2, err); - actualStream = tmp2.value; - startVLC(); - return true; - } - -/* - * Adds a new Media to Playlist. Only during playback - * - * @param name - * @param path - * @return boolean: true if succesful added - */ - public boolean add2Stream(String name, String path){ - - YalpErrorHolder err = new YalpErrorHolder(); - Media[] empty = {}; - this.actualStream.playlist = empty; - - Media media = new Media(); - media.path = path; - media.fileName = name; - - this.actualStream.playlist[this.actualStream.playlist.length] = media; - this.actualStream.outputAction = Action.CREATE; - - OutputHolder tmp = new OutputHolder(this.actualStream); - this.srvCon.control(tmp, err); - this.actualStream = tmp.value; - return true; - } - -/* - * Stops playback - * - * @return boolean: false - if srvConnection to streamer failed - */ - public boolean stop(){ - YalpErrorHolder err = new YalpErrorHolder(); - this.actualStream.outputAction = Action.STOP; - OutputHolder tmp = new OutputHolder(this.actualStream); - this.srvCon.control(tmp,err); - this.actualStream = tmp.value; - this.stopVLC(); - return true; - } - -/* - * jumps to next media in playlist - * - * @return boolean: false - if srvConnection to streamer failed - */ - public boolean next(){ - YalpErrorHolder err = new YalpErrorHolder(); - this.actualStream.outputAction = Action.FORWARD; - OutputHolder tmp = new OutputHolder(this.actualStream); - this.srvCon.control(tmp,err); - this.actualStream = tmp.value; - return true; - } - -/* - * Pauses playback - * - * @return boolean: false - if srvConnection to streamer failed - */ - public boolean pause(){ - YalpErrorHolder err = new YalpErrorHolder(); - this.actualStream.outputAction = Action.PAUSE; - OutputHolder tmp = new OutputHolder(this.actualStream); - this.srvCon.control(tmp,err); - this.actualStream = tmp.value; - return true; - } - -/* - * Causes the server to clean up and shutdown - * - */ - public void serverShutdown(){ - if (this.playback) - this.stop(); - this.srvCon.serverShutdown(); - } - -/* - * Checks if the server is still alive if not Client shutdown - * - */ - public void serverStillAlive(){ - // try{ - // srvCon.ping(); - /* }catch (RemoteException e){ - if (this.playback) - this.stopVLC(); - String errorStr="Server shutdown - Client is going down too"; - - MessageBox messageBox = new MessageBox( - new Shell(Display.getDefault(),SWT.MIN), SWT.OK); - - System.out.println(errorStr); - messageBox.setMessage(errorStr); - messageBox.open(); - System.exit(0); - } */ - } - -/* - * Returns client IP address - * - * @return String: ipAddress - */ - public String getClientIp(){ - return this.clientIP; - } - -/* - * Returns username of logged in user - * - * @return String: username - */ - public String getYalpUserName(){ - return this.userName; - } - -/* - * Returns indication if playback is runing - * - * @return boolean: true - if is play'in - */ - public Boolean getPlayback(){ - return this.playback; - } - -/* - * Get Total amount of streams played - * - * @return int: number of Streams totally played - * - public int getAllStreamNum(){ - try{ - return this.srvCon.getStreamCounter().getAllStreams(); - }catch (Exception e){ - System.out.println("Exception in Model.getAllStreamNum"+e); - } - return -1; - } - */ - -/* - * Gets amount of Streams actual playing - * - * @return int: number of Streams play'in at the moment - * - public int getActualStreamNum(){ - try{ - return this.srvCon.getStreamCounter().getActualStreams(); - }catch (Exception e){ - System.out.println("Exception in Model.getActualStreamNum"+e); - } - return -1; - } - */ - -/* - * Sets class variable logoff to true and logs off from server - */ - public void logoff(){ - YalpErrorHolder err = new YalpErrorHolder(); - try{ - this.logoff=true; - this.srvCon.clientLogoff(this.session, err); - }catch(Exception e) {// DEBUG - System.out.println("Model Exeptions in logoff"); - e.printStackTrace(); - } - } - -/* - * Returns indication if client is logging of - * - * @return Boolean: true - if is logging of - */ - public Boolean getLogoff(){ - return this.logoff; - } -} +/*
+ * 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;
+
+import YalpInterfaces.*;
+import YalpClients.*;
+
+import java.beans.XMLDecoder;
+import java.beans.XMLEncoder;
+import java.io.*;
+import java.net.Inet4Address;
+import java.net.MalformedURLException;
+import java.net.UnknownHostException;
+import java.sql.SQLException;
+import java.util.ArrayList;
+
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.MessageBox;
+import org.eclipse.swt.widgets.Shell;
+
+import org.omg.CosNaming.*;
+import org.omg.CosNaming.NamingContextPackage.*;
+import org.omg.CORBA.*;
+
+/*
+ * Class Model
+ *
+ * <em>Implementiert die Schnittstellenfunktionen zur Steuerung des Servers
+ * (Datenbankinhalte schreiben, lesen; Streaming steuern</em>
+ *
+ * @author Volker Dahnke / Manuel Traut
+ *
+ * @version 0.6 14-12-2005<br>
+ *
+ * @see client.GUI
+ */
+
+public class Model {
+
+ public ServerControlInterface srvCon;
+ private Process vlcPlayer;
+ private Output actualStream = new Output();
+ private Output streamInfo = new Output();
+ private ArrayList<Media> findMedia = new ArrayList<Media>();
+ private ArrayList<Media> editMedia = new ArrayList<Media>();
+ private ArrayList<Media> toPlaylist = new ArrayList<Media>();
+ private ArrayList<Media> playList = new ArrayList<Media>();
+ private ArrayList<YalpUser> userList = new ArrayList<YalpUser>();
+ private ClientConfiguration settings;
+ private String clientIP;
+ private String curPasswd;
+ private AccessRights userGroup=AccessRights.DENY;
+ private String userName;
+ private Boolean playback = false;
+ private Boolean logoff= false;
+ private Session session = new Session();
+/*
+ * Instances srvConnection to Registry, DbConnection, ServerControl
+ * and VlcStreamer. Also instances Class variables
+ */
+ public Model(String[] argv) {
+
+ this.settings=new ClientConfiguration();
+ loadConfig("ClientConfiguration.xml");
+ writeConfig("ClientConfiguration.xml");
+
+ try {
+ ORB orb = ORB.init(argv, null);
+
+ org.omg.CORBA.Object objRef =
+ orb.resolve_initial_references("NameService");
+
+ NamingContextExt ncRef = NamingContextExtHelper.narrow(objRef);
+
+ String name = "YALP_Server";
+ srvCon = ServerControlInterfaceHelper.narrow(ncRef.resolve_str(name));
+ } catch (Exception e) {// DEBUG
+ String errorStr="couldn't connect to YALP Server";
+
+ MessageBox messageBox = new MessageBox(
+ new Shell(Display.getDefault(),SWT.MIN), SWT.OK );
+
+ System.out.println(e);
+ messageBox.setMessage(errorStr);
+ messageBox.open();
+ System.exit(0);
+ }
+
+ // determine client IP Adress
+ try {
+ this.clientIP = Inet4Address.getLocalHost().getHostAddress();
+ System.out.println(this.clientIP);
+ } catch (UnknownHostException e) {
+ String errorStr = "Model.model: determine IP failed";
+
+ MessageBox messageBox = new MessageBox(
+ new Shell(Display.getDefault(),SWT.MIN), SWT.OK );
+
+ System.out.println(errorStr);
+ messageBox.setMessage(errorStr);
+ messageBox.open();
+ System.exit(0);
+ }
+ this.userList = new ArrayList<YalpUser>();
+ this.playList = new ArrayList<Media>();
+ this.toPlaylist = new ArrayList<Media>();
+ }
+
+/*
+ * write Configuration to XML File
+ *
+ * @param fileName
+ * @return boolean: true if succesful
+ */
+ public boolean writeConfig(String fileName) {
+ try {
+ FileOutputStream srvConfigFile = new FileOutputStream(fileName);
+ XMLEncoder srvConfigWriter = new XMLEncoder(srvConfigFile);
+ srvConfigWriter.writeObject(settings.serverIP);
+ srvConfigWriter.writeObject(settings.classServerPort);
+ srvConfigWriter.writeObject(settings.registryPort);
+ srvConfigWriter.writeObject(settings.vlcCommand);
+ srvConfigWriter.close();
+ } catch (FileNotFoundException fnfe) {
+ return false;
+ }
+ return true;
+ }
+
+/*
+ * load Configuration from XML File if possible
+ *
+ * @param fileName
+ * @return boolean: true if succesful
+ */
+ public boolean loadConfig(String fileName){
+ try{
+ FileInputStream srvConfigFile = new FileInputStream(fileName);
+ XMLDecoder srvConfigLoader = new XMLDecoder(srvConfigFile);
+ System.out.println(srvConfigFile);
+ settings.serverIP = (String)srvConfigLoader.readObject();
+ settings.classServerPort= (Integer)srvConfigLoader.readObject();
+ settings.registryPort = (Integer)srvConfigLoader.readObject();
+ settings.vlcCommand = (String)srvConfigLoader.readObject();
+ srvConfigLoader.close();
+ } catch(FileNotFoundException fnfe) {
+ System.out.println("Configuration not found, loading defaults...");
+ return false;
+ } catch(ClassCastException cce) {
+ System.out.println("Errors in Configuration, loading defaults...");
+ return false;
+ }
+ return true;
+ }
+
+/*
+ * get acutal srvConfig object
+ *
+ * @return ClientConfiguration: aktuelle Konfiguration
+ */
+ public ClientConfiguration getConfig(){
+ return this.settings;
+ }
+
+/*
+ * setzen und speichern eines ClientConfiguration Files
+ *
+ * @param set
+ * ClientConfiguration.xml
+ * @return boolean: true if succesful written Configuration
+ */
+ public boolean setConfig(ClientConfiguration set){
+ this.settings = set;
+ return this.writeConfig("ClientConfiguration.xml");
+ }
+
+/*
+ * Sends YalpUsername and passwd to Server and returns YalpUsergroup
+ *
+ * @param username
+ * @param passwd
+ * @return AccessRights
+ */
+ public AccessRights userVerify(String username,String passwd){
+ this.userName=username;
+ this.curPasswd = passwd;
+ YalpErrorHolder err = new YalpErrorHolder();
+ SessionHolder sess = new SessionHolder();
+ try{
+ // log on server
+ this.srvCon.clientLogon(this.userName,passwd,this.clientIP,sess,err);
+ this.session = sess.value;
+ this.userGroup = sess.value.me.level;
+ /*
+ } catch (RemoteException e) {
+ System.out.println("client.Model: Logon on Server failed 1"+ e);
+ e.printStackTrace();
+ System.out.println("client.Model: Logon on Server failed 1");
+ } catch (MalformedURLException e) {
+ System.out.println("client.Model: Logon on Server failed 2");
+ } catch (SQLException e) {
+ System.out.println("client.Model: Logon on Server failed 3");
+ } catch (NotBoundException e) {
+ System.out.println("client.Model: Logon on Server failed 4");
+ */
+ }catch(NullPointerException e){
+ System.out.println("YALP Server couldn't be reached");
+ this.userGroup = AccessRights.NO_YALP_SERVER;
+ }
+ return this.userGroup;
+ }
+
+/*
+ * Gets a list with all YalpUsers from the server
+ *
+ * @return ArrayList<YalpUser> all registered YalpUsers
+ */
+ public ArrayList<YalpUser> getUser(){
+ YalpErrorHolder err = new YalpErrorHolder();
+ try{
+ UsersHolder usr = new UsersHolder();
+ this.srvCon.getUser(usr, err);
+ this.userList = new ArrayList<YalpUser>(usr.value.length);
+ for(int i = 0; i < usr.value.length; i++)
+ this.userList.add(usr.value[i]);
+ }catch(Exception e){
+ System.out.println("Exceoption in Model userList "+ e);
+ }
+ return userList;
+ }
+
+/*
+ * Sends User change request to server
+ *
+ * @param user
+ * Configuration with changes on specific YalpUser
+ */
+ public void changeUser(YalpUser user, String passwd, Action action) {
+ YalpErrorHolder err = new YalpErrorHolder();
+ try{
+ this.srvCon.changeUser( user,
+ passwd,
+ action,
+ err );
+ System.out.println(err.value.descr);
+ }catch(Exception e){
+ System.out.println("Exceoption in Model changeUser "+ e);
+ }
+ }
+
+/*
+ * Sends Media change request to server and refreshes Model data
+ *
+ * @param media
+ * to change
+ * @return boolean: succesful changed media
+ */
+ public Boolean changeMedia(Media media, Action action){
+ YalpErrorHolder err = new YalpErrorHolder();
+ try{
+ this.srvCon.changeMedia(media, action, err);
+ if(err.value.code == YalpErrorCode.OK){
+ Media result;
+ for (int i=0;i<this.editMedia.size();i++){
+ result=this.editMedia.get(i);
+ /* t.b.d. alter to new db desgin
+ if (result.id==media.id){
+ result.type=media.type;
+ result.title=media.title;
+ result.author=media.author;
+ result.album=media.album;
+ result.category=media.category;
+ result.year=media.year;
+ result.duration=media.duration;
+ result.aBitrate=media.aBitrate;
+ result.vBitrate=media.vBitrate;
+ result.resolution=media.resolution;
+ result.ownerId=media.ownerId;
+ result.lastEdit=media.lastEdit;
+ result.path=media.path;
+ result.name=media.name;
+ return true;
+ }
+ */
+ }
+ }
+ } catch(Exception e) {
+ System.out.println("Exceoption in Model changeUser "+ e);
+ }
+ return false;
+ }
+
+/*
+ * adds Media with given id to Playlist
+ *
+ * @param id
+ */
+ public void add2PlayList(int id){
+ Boolean notfound=true;
+ for (int i=0;(i<this.findMedia.size())&& (notfound);i++){
+ Media result=this.findMedia.get(i);
+ if (result.id==id){
+ String name = result.name;
+ String path = result.path;
+ if(playback){
+ this.add2Stream(name, path);
+ }
+ this.playList.add(result);
+ this.toPlaylist.add(result);
+ notfound=false;
+ }
+ }
+ }
+
+/*
+ * Removes Media with given id from Playlist
+ *
+ * @param id
+ */
+ public void removeFromPlayList(int id){
+ /* t.b.d.
+ this.playList.remItem(id);
+ this.toPlaylist.remove(id);
+ */
+ }
+
+/*
+ * Returns List with items to play
+ *
+ * @return ArrayList<Media>: ArrayList to create Playlist from
+ */
+ public ArrayList<Media> getToPlaylist(){
+ return this.toPlaylist;
+ }
+
+/*
+ * Creates new Stream with actual playlist
+ *
+ * @return Streaminfo: about new created Stream, Client should use this,
+ * information to get the Information howto receive the stream
+ */
+ public Output createOutput(){
+ /* t.b.d. former createStream */
+ streamInfo.outputAction = Action.CREATE;
+ Media[] a = {};
+ streamInfo.playlist = this.playList.toArray(a);
+ return this.streamInfo;
+ }
+
+/*
+ * Sends search request to server and refreshes Model data
+ *
+ * @param request
+ * Search Request
+ * @param kind
+ * 1 - search in first Window; other ints: search in other window
+ * (admins edit view)
+ * @return int: number of results
+ */
+ public int search(String request, ArrayList<MediaType> types, int kind){
+ YalpErrorHolder err = new YalpErrorHolder();
+ MediasHolder result = new MediasHolder();
+ try{
+ MediaType[] a = {};
+ if (kind == 1){
+ srvCon.search(request, types.toArray(a), result, err);
+ for(int i = 0; i < result.value.length; i++)
+ findMedia.add(result.value[i]);
+ return findMedia.size();
+ } else {
+ srvCon.search(request, types.toArray(a), result, err);
+ for(int i = 0; i < result.value.length; i++)
+ editMedia.add(result.value[i]);
+ return editMedia.size();
+ }
+ } catch(Exception e){
+ e.printStackTrace();
+ System.out.println("Exceoption in Model search "+ e);
+ return 0;
+ }
+ }
+
+/*
+ * Returns the search result
+ *
+ * @param kind
+ * 1 - for searchMedia of mainwindow; 2 - for searchMedia of editView
+ * @return ArrayList<Media>: last found medias
+ */
+
+ public ArrayList<Media> getMedia(int kind){
+ if (kind==1) return this.findMedia;
+ else return this.editMedia;
+ }
+
+/*
+ * Retuns search result with given id
+ *
+ * @param id
+ * of the result
+ * @param kind
+ * 1 - for mainWindow, 2 for admins editView
+ * @return Media: searchMedia, with specified ID
+ */
+ public Media getMediaWithId(int id,int kind){
+ ArrayList<Media> resultList;
+ if (kind==1)resultList= this.findMedia;
+ else resultList=this.editMedia;
+ for (int i=0;(i<resultList.size());i++){
+ Media result=resultList.get(i);
+ if (result.id==id){
+ return result;
+ }
+ }
+ return null;
+ }
+
+/*
+ * Retuns id of YalpUser with given username
+ *
+ * @param username
+ * @return int: useriD
+ */
+ public int getOwnerid(String username){
+ ArrayList<YalpUser> ownerList =this.userList;
+ for (YalpUser owner:ownerList){
+ if (owner.name.equals(username)){
+ return owner.id;
+ }
+ }
+ return 0;
+ }
+
+/*
+ * Returns MediaType as string
+ *
+ * @param mediatype
+ * @return string
+ */
+ public String getTypeName(MediaType type)
+ {
+ switch(type.value())
+ {
+ case MediaType._IMAGE:
+ return "image";
+ case MediaType._SOUND:
+ return "sound";
+ case MediaType._VIDEO:
+ return "video";
+ default:
+ return "unknown";
+ }
+ }
+
+/*
+ * Returns AccessRights as string
+ *
+ * @param mediatype
+ * @return string
+ */
+ public String accessRightsName(AccessRights type)
+ {
+ switch(type.value())
+ {
+ case AccessRights._USER:
+ return "user";
+ case AccessRights._ADMIN:
+ return "admin";
+ case AccessRights._DENY:
+ return "no login";
+ default:
+ return "unknown";
+ }
+ }
+
+
+/*
+ * Sets class variable actualStream to given value
+ *
+ * @param aStream
+ * stream to srvControl via play, pause, etc
+ */
+ public void setActualStream(Output aStream){
+ actualStream = aStream;
+ }
+
+/*
+ * Starts Video Lan Player
+ *
+ * @return boolean: true if vlc can be started and a stream is actualStream
+ */
+ private boolean startVLC(){
+
+ String vlcCmd = "/usr/bin/vlc" +
+ " --ignore-config --no-qt-privacy-ask --video-on-top --qt-display-mode=2";
+ //settings.vlcCommand
+/*
+ switch (this.actualStream.getAccess()){
+ case UDP:
+ */
+ vlcCmd += " udp://@:";
+ /*
+ break;
+ case HTTP:
+ vlcCmd += "http://";
+ break;
+ default:
+ System.out.println(
+ "client.Model.startVLC: playback this type is not supported" );
+ }
+*/
+ vlcCmd += "9993"; // actualStream.info.params;
+ System.out.println(vlcCmd);
+
+ try {
+ this.vlcPlayer = Runtime.getRuntime().exec(vlcCmd);
+ } catch (IOException e) {
+ System.out.println("client.Model.startVLC: starting vlcPlayer failed");
+ return false;
+ }
+ return true;
+ }
+
+/*
+ * Stops Video Lan Player
+ *
+ */
+ private void stopVLC(){
+ playback = false;
+ if(vlcPlayer != null)
+ vlcPlayer.destroy();
+ }
+
+/*
+ * Starts playback of actual playlist
+ *
+ * @return void
+ */
+ public boolean play(){
+
+ playback = true;
+
+ actualStream.outputAction = Action.CREATE;
+ actualStream.info = new AccessInfo( "bam",
+ "bam",
+ "vlc",
+ "params",
+ AccessType.STREAM );
+
+ Media[] a = new Media[playList.size()];
+ actualStream.playlist = playList.toArray(a);
+ actualStream.destIp = clientIP;
+
+ YalpErrorHolder err = new YalpErrorHolder();
+
+ OutputHolder tmp = new OutputHolder();
+ tmp.value = actualStream;
+
+ srvCon.control(tmp, err);
+ actualStream = tmp.value;
+
+ actualStream.outputAction = Action.START;
+ OutputHolder tmp2 = new OutputHolder(actualStream);
+ srvCon.control(tmp2, err);
+ actualStream = tmp2.value;
+ startVLC();
+ return true;
+ }
+
+/*
+ * Adds a new Media to Playlist. Only during playback
+ *
+ * @param name
+ * @param path
+ * @return boolean: true if succesful added
+ */
+ public boolean add2Stream(String name, String path){
+
+ YalpErrorHolder err = new YalpErrorHolder();
+ Media[] empty = {};
+ this.actualStream.playlist = empty;
+
+ Media media = new Media();
+ media.path = path;
+ media.fileName = name;
+
+ this.actualStream.playlist[this.actualStream.playlist.length] = media;
+ this.actualStream.outputAction = Action.CREATE;
+
+ OutputHolder tmp = new OutputHolder(this.actualStream);
+ this.srvCon.control(tmp, err);
+ this.actualStream = tmp.value;
+ return true;
+ }
+
+/*
+ * Stops playback
+ *
+ * @return boolean: false - if srvConnection to streamer failed
+ */
+ public boolean stop(){
+ YalpErrorHolder err = new YalpErrorHolder();
+ this.actualStream.outputAction = Action.STOP;
+ OutputHolder tmp = new OutputHolder(this.actualStream);
+ this.srvCon.control(tmp,err);
+ this.actualStream = tmp.value;
+ this.stopVLC();
+ return true;
+ }
+
+/*
+ * jumps to next media in playlist
+ *
+ * @return boolean: false - if srvConnection to streamer failed
+ */
+ public boolean next(){
+ YalpErrorHolder err = new YalpErrorHolder();
+ this.actualStream.outputAction = Action.FORWARD;
+ OutputHolder tmp = new OutputHolder(this.actualStream);
+ this.srvCon.control(tmp,err);
+ this.actualStream = tmp.value;
+ return true;
+ }
+
+/*
+ * Pauses playback
+ *
+ * @return boolean: false - if srvConnection to streamer failed
+ */
+ public boolean pause(){
+ YalpErrorHolder err = new YalpErrorHolder();
+ this.actualStream.outputAction = Action.PAUSE;
+ OutputHolder tmp = new OutputHolder(this.actualStream);
+ this.srvCon.control(tmp,err);
+ this.actualStream = tmp.value;
+ return true;
+ }
+
+/*
+ * Causes the server to clean up and shutdown
+ *
+ */
+ public void serverShutdown(){
+ if (this.playback)
+ this.stop();
+ this.srvCon.serverShutdown();
+ }
+
+/*
+ * Checks if the server is still alive if not Client shutdown
+ *
+ */
+ public void serverStillAlive(){
+ // try{
+ // srvCon.ping();
+ /* }catch (RemoteException e){
+ if (this.playback)
+ this.stopVLC();
+ String errorStr="Server shutdown - Client is going down too";
+
+ MessageBox messageBox = new MessageBox(
+ new Shell(Display.getDefault(),SWT.MIN), SWT.OK);
+
+ System.out.println(errorStr);
+ messageBox.setMessage(errorStr);
+ messageBox.open();
+ System.exit(0);
+ } */
+ }
+
+/*
+ * Returns client IP address
+ *
+ * @return String: ipAddress
+ */
+ public String getClientIp(){
+ return this.clientIP;
+ }
+
+/*
+ * Returns username of logged in user
+ *
+ * @return String: username
+ */
+ public String getYalpUserName(){
+ return this.userName;
+ }
+
+/*
+ * Returns indication if playback is runing
+ *
+ * @return boolean: true - if is play'in
+ */
+ public Boolean getPlayback(){
+ return this.playback;
+ }
+
+/*
+ * Get Total amount of streams played
+ *
+ * @return int: number of Streams totally played
+ *
+ public int getAllStreamNum(){
+ try{
+ return this.srvCon.getStreamCounter().getAllStreams();
+ }catch (Exception e){
+ System.out.println("Exception in Model.getAllStreamNum"+e);
+ }
+ return -1;
+ }
+ */
+
+/*
+ * Gets amount of Streams actual playing
+ *
+ * @return int: number of Streams play'in at the moment
+ *
+ public int getActualStreamNum(){
+ try{
+ return this.srvCon.getStreamCounter().getActualStreams();
+ }catch (Exception e){
+ System.out.println("Exception in Model.getActualStreamNum"+e);
+ }
+ return -1;
+ }
+ */
+
+/*
+ * Sets class variable logoff to true and logs off from server
+ */
+ public void logoff(){
+ YalpErrorHolder err = new YalpErrorHolder();
+ try{
+ this.logoff=true;
+ this.srvCon.clientLogoff(this.session, err);
+ }catch(Exception e) {// DEBUG
+ System.out.println("Model Exeptions in logoff");
+ e.printStackTrace();
+ }
+ }
+
+/*
+ * Returns indication if client is logging of
+ *
+ * @return Boolean: true - if is logging of
+ */
+ public Boolean getLogoff(){
+ return this.logoff;
+ }
+}
diff --git a/src/YalpClients/SwtClient/SwtClient.java b/src/YalpClients/SwtClient/SwtClient.java index 1950eaa..513d4ff 100755 --- a/src/YalpClients/SwtClient/SwtClient.java +++ b/src/YalpClients/SwtClient/SwtClient.java @@ -1,61 +1,61 @@ -/* - * - * 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; - -import YalpClients.SwtClient.GUI.*; - -import org.eclipse.swt.*; -import org.eclipse.swt.widgets.Display; -import org.eclipse.swt.widgets.Shell; - - -/* - * Class SwtClient - * - * <em>static main method</em> - * - * @author Volker Dahnke / Manuel Traut - * - * @version 0.1 20-11-2005<br> - */ -public class SwtClient{ - -/* - * Client initialization - * - * @param argv - * arguments which are not used - */ - public static void main (String[] argv) { - try{ - System.setProperty("java.security.policy","client.policy"); - } - catch (Exception e) {//DEBUG - System.out.println ("Server SecurityManagerExeptions not caught jet " + e); - System.exit(0); - } - - LoadDialog load = new LoadDialog( - new Shell(Display.getDefault(),SWT.NONE), SWT.NONE); - - load.show(); - final Model model = new Model(argv); - load.close(); - - StartDialog start = - new StartDialog(new Shell(Display.getDefault(),SWT.MIN),model, SWT.NONE); - - start.show(); - - return; - } -} +/*
+ *
+ * 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;
+
+import YalpClients.SwtClient.GUI.*;
+
+import org.eclipse.swt.*;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.Shell;
+
+
+/*
+ * Class SwtClient
+ *
+ * <em>static main method</em>
+ *
+ * @author Volker Dahnke / Manuel Traut
+ *
+ * @version 0.1 20-11-2005<br>
+ */
+public class SwtClient{
+
+/*
+ * Client initialization
+ *
+ * @param argv
+ * arguments which are not used
+ */
+ public static void main (String[] argv) {
+ try{
+ System.setProperty("java.security.policy","client.policy");
+ }
+ catch (Exception e) {//DEBUG
+ System.out.println ("Server SecurityManagerExeptions not caught jet " + e);
+ System.exit(0);
+ }
+
+ LoadDialog load = new LoadDialog(
+ new Shell(Display.getDefault(),SWT.NONE), SWT.NONE);
+
+ load.show();
+ final Model model = new Model(argv);
+ load.close();
+
+ StartDialog start =
+ new StartDialog(new Shell(Display.getDefault(),SWT.MIN),model, SWT.NONE);
+
+ start.show();
+
+ return;
+ }
+}
|
