Chat-O-Matic/application/views/TemplateView.cpp

68 lines
1.4 KiB
C++
Raw Normal View History

/*
* Copyright 2009-2010, Pier Luigi Fiorini. All rights reserved.
* Distributed under the terms of the MIT License.
*
* Authors:
* Pier Luigi Fiorini, pierluigi.fiorini@gmail.com
*/
#include "TemplateView.h"
#include <Button.h>
#include <ControlLook.h>
#include <CheckBox.h>
#include <GroupLayout.h>
#include <GroupLayoutBuilder.h>
#include <PopUpMenu.h>
#include <MenuField.h>
#include <MenuItem.h>
#include <ScrollView.h>
#include <TextControl.h>
#include <Window.h>
TemplateView::TemplateView(const char* name)
: BView(name, B_WILL_DRAW)
{
}
void
TemplateView::AttachedToWindow()
{
// Once we are attached to window, the GUI is already created
// so we can set our window as target for messages
for (int32 i = 0; i < CountChildren(); i++) {
BView* child = ChildAt(i);
BMenu* menu = dynamic_cast<BMenu*>(child);
BMenuField* menuField
= dynamic_cast<BMenuField*>(child);
BTextControl* textControl
= dynamic_cast<BTextControl*>(child);
2021-07-29 22:47:30 -05:00
BTextView* textView = dynamic_cast<BTextView*>(child);
BCheckBox* checkBox = dynamic_cast<BCheckBox*>(child);
if (menuField)
menu = menuField->Menu();
if (menu) {
2021-06-18 14:18:45 -05:00
if (i == 0)
menu->MakeFocus(true);
menu->SetTargetForItems(Window());
}
2021-07-29 22:47:30 -05:00
if (textControl)
2021-06-18 14:18:45 -05:00
if (i == 0)
textControl->MakeFocus(true);
2021-07-29 22:47:30 -05:00
if (checkBox)
2021-06-18 14:18:45 -05:00
if (i == 0)
checkBox->MakeFocus(true);
2021-07-29 22:47:30 -05:00
if (textView)
2021-06-18 14:18:45 -05:00
if (i == 0)
textView->MakeFocus(true);
}
}