VideoWindow::VideoWindow(const char* title, window_type type, uint32 flags, port_id* consumerPort) : BWindow(BRect(50, 50, 50, 50), title, type, flags), fPortPtr(consumerPort), fVideoView(NULL) { fFtpInfo.port = 0; fFtpInfo.rate = 0x7fffffff; fFtpInfo.imageFormat = 0; fFtpInfo.translator = 0; fFtpInfo.passiveFtp = true; fFtpInfo.uploadClient = 0; strcpy(fFtpInfo.fileNameText, "filename"); strcpy(fFtpInfo.serverText, "server"); strcpy(fFtpInfo.loginText, "login"); strcpy(fFtpInfo.passwordText, "password"); strcpy(fFtpInfo.directoryText, "directory"); _SetUpSettings("codycam", ""); BMenuBar* menuBar = new BMenuBar("menu bar"); BMenuItem* menuItem; fMenu = new BMenu(B_TRANSLATE("File")); menuItem = new BMenuItem(B_TRANSLATE("Video settings"), new BMessage(msg_video), 'P'); menuItem->SetTarget(be_app); fMenu->AddItem(menuItem); fMenu->AddSeparatorItem(); menuItem = new BMenuItem(B_TRANSLATE("Start video"), new BMessage(msg_start), 'A'); menuItem->SetTarget(be_app); fMenu->AddItem(menuItem); menuItem = new BMenuItem(B_TRANSLATE("Stop video"), new BMessage(msg_stop), 'O'); menuItem->SetTarget(be_app); fMenu->AddItem(menuItem); fMenu->AddSeparatorItem(); menuItem = new BMenuItem(B_TRANSLATE("Quit"), new BMessage(B_QUIT_REQUESTED), 'Q'); menuItem->SetTarget(be_app); fMenu->AddItem(menuItem); menuBar->AddItem(fMenu); /* add some controls */ _BuildCaptureControls(); BBox* box = new BBox("box"); box->AddChild(fVideoView); BLayoutBuilder::Group<>(this, B_VERTICAL, 0) .Add(menuBar) .AddGroup(B_VERTICAL) .SetInsets(B_USE_WINDOW_SPACING) .Add(box) .AddGroup(B_HORIZONTAL, B_USE_DEFAULT_SPACING) .Add(fCaptureSetupBox) .Add(fFtpSetupBox) .End() .Add(fStatusLine) .End() .AddGlue(); Show(); }
VideoWindow::VideoWindow(BRect frame, const char* title, window_type type, uint32 flags, port_id* consumerPort) : BWindow(frame, title, type, flags), fPortPtr(consumerPort), fView(NULL), fVideoView(NULL) { fFtpInfo.port = 0; fFtpInfo.rate = 0x7fffffff; fFtpInfo.imageFormat = 0; fFtpInfo.translator = 0; fFtpInfo.passiveFtp = true; fFtpInfo.uploadClient = 0; strcpy(fFtpInfo.fileNameText, "filename"); strcpy(fFtpInfo.serverText, "server"); strcpy(fFtpInfo.loginText, "login"); strcpy(fFtpInfo.passwordText, "password"); strcpy(fFtpInfo.directoryText, "directory"); _SetUpSettings("codycam", ""); BMenuBar* menuBar = new BMenuBar(BRect(0, 0, 0, 0), "menu bar"); BMenuItem* menuItem; BMenu* menu = new BMenu("File"); menuItem = new BMenuItem("Video settings", new BMessage(msg_video), 'P'); menuItem->SetTarget(be_app); menu->AddItem(menuItem); menu->AddSeparatorItem(); menuItem = new BMenuItem("Start video", new BMessage(msg_start), 'A'); menuItem->SetTarget(be_app); menu->AddItem(menuItem); menuItem = new BMenuItem("Stop video", new BMessage(msg_stop), 'O'); menuItem->SetTarget(be_app); menu->AddItem(menuItem); menu->AddSeparatorItem(); menuItem = new BMenuItem("About Codycam" B_UTF8_ELLIPSIS, new BMessage(msg_about), 'B'); menuItem->SetTarget(be_app); menu->AddItem(menuItem); menu->AddSeparatorItem(); menuItem = new BMenuItem("Quit", new BMessage(B_QUIT_REQUESTED), 'Q'); menuItem->SetTarget(be_app); menu->AddItem(menuItem); menuBar->AddItem(menu); /* give it a gray background view */ fView = new BView("Background View", B_WILL_DRAW); fView->SetViewColor(ui_color(B_PANEL_BACKGROUND_COLOR)); /* add some controls */ _BuildCaptureControls(fView); SetLayout(new BGroupLayout(B_VERTICAL)); AddChild(menuBar); AddChild(fView); Show(); }