Revision fbff60ff web_client/src/gr/grnet/pithos/web/client/GSS.java

b/web_client/src/gr/grnet/pithos/web/client/GSS.java
8 8
import com.google.gwt.user.client.ui.DockPanel;
9 9
import com.google.gwt.user.client.ui.HasVerticalAlignment;
10 10
import com.google.gwt.view.client.ListDataProvider;
11
import com.google.gwt.view.client.SelectionChangeEvent;
12
import com.google.gwt.view.client.SelectionChangeEvent.Handler;
13
import com.google.gwt.view.client.SingleSelectionModel;
14
import com.google.gwt.view.client.TreeViewModel.NodeInfo;
11 15
import gr.grnet.pithos.web.client.clipboard.Clipboard;
12 16
import gr.grnet.pithos.web.client.commands.GetUserCommand;
13 17
import gr.grnet.pithos.web.client.foldertree.AccountResource;
18
import gr.grnet.pithos.web.client.foldertree.File;
14 19
import gr.grnet.pithos.web.client.foldertree.Folder;
15 20
import gr.grnet.pithos.web.client.foldertree.FolderTreeView;
16 21
import gr.grnet.pithos.web.client.foldertree.FolderTreeViewModel;
......
55 60
import com.google.gwt.user.client.ui.RootPanel;
56 61
import com.google.gwt.user.client.ui.TabPanel;
57 62
import com.google.gwt.user.client.ui.VerticalPanel;
63
import java.util.Set;
58 64

  
59 65
/**
60 66
 * Entry point classes define <code>onModuleLoad()</code>.
......
195 201
     */
196 202
    private String token;
197 203

  
198
    private FolderTreeViewModel folderTreeViewModel = new FolderTreeViewModel();
199

  
200
    private FolderTreeView folderTreeView = new FolderTreeView(folderTreeViewModel);
204
    private SingleSelectionModel<Folder> folderTreeSelectionModel;
205
    private FolderTreeViewModel folderTreeViewModel;
206
    private FolderTreeView folderTreeView;
201 207

  
202 208
    private AccountResource account;
203 209

  
......
217 223
        messagePanel.setWidth("100%");
218 224
        messagePanel.setVisible(false);
219 225

  
220
        fileList = new FileList(images);
221 226

  
222 227
        // Inner contains the various lists.
223 228
        inner.sinkEvents(Event.ONCONTEXTMENU);
224 229
        inner.setAnimationEnabled(true);
225 230
        inner.getTabBar().addStyleName("pithos-MainTabBar");
226 231
        inner.getDeckPanel().addStyleName("pithos-MainTabPanelBottom");
227
        inner.add(fileList, createHeaderHTML(AbstractImagePrototype.create(images.folders()), "Files"), true);
228 232

  
229 233
        inner.setWidth("100%");
230
        inner.selectTab(0);
231 234

  
232 235
        inner.addSelectionHandler(new SelectionHandler<Integer>() {
233 236

  
......
242 245
            }
243 246
        });
244 247

  
248
        folderTreeSelectionModel = new SingleSelectionModel<Folder>();
249
        folderTreeSelectionModel.addSelectionChangeHandler(new SelectionChangeEvent.Handler() {
250
            @Override
251
            public void onSelectionChange(SelectionChangeEvent event) {
252
                Folder f = folderTreeSelectionModel.getSelectedObject();
253
                showFiles(f);
254
            }
255
        });
256

  
257
        folderTreeViewModel = new FolderTreeViewModel(folderTreeSelectionModel);
258
        folderTreeView = new FolderTreeView(folderTreeViewModel);
259

  
260
        fileList = new FileList(images, folderTreeView);
261
        inner.add(fileList, createHeaderHTML(AbstractImagePrototype.create(images.folders()), "Files"), true);
262

  
245 263
        // Add the left and right panels to the split panel.
246 264
        splitPanel.setLeftWidget(folderTreeView);
247 265
        splitPanel.setRightWidget(inner);
......
290 308
        });
291 309
    }
292 310

  
293
	/**
311
    private void showFiles(Folder f) {
312
        Set<File> files = f.getFiles();
313
        fileList.setFiles(new ArrayList<File>(files));
314
        inner.selectTab(0);
315
    }
316

  
317
    /**
294 318
	 * Parse and store the user credentials to the appropriate fields.
295 319
	 */
296 320
	private boolean parseUserCredentials() {
......
322 346
		Configuration conf = (Configuration) GWT.create(Configuration.class);
323 347

  
324 348
//        Window.Location.assign(GWT.getModuleBaseURL() + conf.loginUrl() + "?next=" + Window.Location.getHref());
325
        Cookies.setCookie(conf.authCookie(), "demo" + conf.cookieSeparator() + "0000");
349
        Cookies.setCookie(conf.authCookie(), "test" + conf.cookieSeparator() + "0000");
326 350
        Window.Location.assign(GWT.getModuleBaseURL() + "GSS.html");
327 351
	}
328 352

  
......
335 359
                account = result;
336 360
                statusPanel.displayStats(account);
337 361
                folderTreeViewModel.initialize(account);
362
                inner.selectTab(0);
338 363
            }
339 364

  
340 365
            @Override
......
346 371
                    GSS.get().displayError("System error fetching user data: " + t.getMessage());
347 372
            }
348 373
        };
349

  
374
        getAccount.setHeader("X-Auth-Token", token);
350 375
        Scheduler.get().scheduleDeferred(getAccount);
351 376
    }
352 377

  
......
410 435
	}
411 436

  
412 437
	/**
413
	 * Make the user list visible.
414
	 */
415
	public void showUserList() {
416
		inner.selectTab(1);
417
	}
418

  
419
	/**
420
	 * Make the file list visible.
421
	 */
422
	public void showFileList() {
423
		fileList.updateFileCache(true /*clear selection*/);
424
		inner.selectTab(0);
425
	}
426

  
427
	/**
428 438
	 * Make the file list visible.
429 439
	 *
430 440
	 * @param update
......
453 463
			if (currentFolder instanceof RestResourceWrapper) {
454 464
				RestResourceWrapper folder = (RestResourceWrapper) currentFolder;
455 465
				files = folder.getResource().getFiles();
456
			} else if (currentFolder instanceof TrashResource) {
457
				TrashResource folder = (TrashResource) currentFolder;
458
				files = folder.getFiles();
459
			}
460
			else if (currentFolder instanceof SharedResource) {
461
				SharedResource folder = (SharedResource) currentFolder;
462
				files = folder.getFiles();
463
			}
464
			else if (currentFolder instanceof OtherUserResource) {
465
				OtherUserResource folder = (OtherUserResource) currentFolder;
466
				files = folder.getFiles();
467 466
			}
468
			if (files != null)
469
				getFileList().setFiles(files);
470
			else
471
				getFileList().setFiles(new ArrayList<FileResource>());
472 467
		}
473
		fileList.updateFileCache(clearSelection /*clear selection*/);
474 468
		inner.selectTab(0);
475 469
	}
476 470

  

Also available in: Unified diff