1// Copyright 1999, Be Incorporated. All Rights Reserved. 2// Copyright 2000-2004, Jun Suzuki. All Rights Reserved. 3// Copyright 2007, Stephan Aßmus. All Rights Reserved. 4// This file may be used under the terms of the Be Sample Code License. 5#include "MediaEncoderWindow.h" 6 7#include <stdio.h> 8 9#include <Catalog.h> 10#include <Locale.h> 11#include <View.h> 12 13 14#undef B_TRANSLATION_CONTEXT 15#define B_TRANSLATION_CONTEXT "MediaConverter-EncoderWindow" 16 17 18MediaEncoderWindow::MediaEncoderWindow(BRect frame, BView* view) 19 : BWindow(frame, B_TRANSLATE("Encoder parameters"), B_DOCUMENT_WINDOW_LOOK, 20 B_MODAL_APP_WINDOW_FEEL, 21 B_NOT_RESIZABLE | B_NOT_ZOOMABLE | B_ASYNCHRONOUS_CONTROLS) 22{ 23 // create and acquire the quit semaphore 24 fQuitSem = create_sem(0, "encoder_view"); 25 26 fView = view; 27 AddChild(fView); 28 ResizeTo(fView->Bounds().Width(), fView->Bounds().Height()); 29} 30 31 32MediaEncoderWindow::~MediaEncoderWindow() 33{ 34 // The view must continue to exist until conversion complete. 35 RemoveChild(fView); 36 delete_sem(fQuitSem); 37} 38 39 40void 41MediaEncoderWindow::MessageReceived(BMessage *msg) 42{ 43} 44 45 46bool 47MediaEncoderWindow::QuitRequested() 48{ 49 return true; 50} 51 52 53void 54MediaEncoderWindow::Go() 55{ 56 this->Show(); 57 58 // wait until window is quit 59 while (acquire_sem(fQuitSem) == B_INTERRUPTED) 60 ; 61} 62 63