40 lines
1.3 KiB
C++
40 lines
1.3 KiB
C++
|
// Copyright 2016 The Chromium Embedded Framework Authors. All rights reserved.
|
||
|
// Use of this source code is governed by a BSD-style license that can be found
|
||
|
// in the LICENSE file.
|
||
|
|
||
|
#include "libcef/browser/views/basic_label_button_impl.h"
|
||
|
|
||
|
#include "libcef/browser/views/basic_label_button_view.h"
|
||
|
|
||
|
// static
|
||
|
CefRefPtr<CefLabelButton> CefLabelButton::CreateLabelButton(
|
||
|
CefRefPtr<CefButtonDelegate> delegate,
|
||
|
const CefString& text,
|
||
|
bool with_frame) {
|
||
|
return CefBasicLabelButtonImpl::Create(delegate, text, with_frame);
|
||
|
}
|
||
|
|
||
|
// static
|
||
|
CefRefPtr<CefBasicLabelButtonImpl> CefBasicLabelButtonImpl::Create(
|
||
|
CefRefPtr<CefButtonDelegate> delegate,
|
||
|
const CefString& text,
|
||
|
bool with_frame) {
|
||
|
CEF_REQUIRE_UIT_RETURN(nullptr);
|
||
|
CefRefPtr<CefBasicLabelButtonImpl> label_button =
|
||
|
new CefBasicLabelButtonImpl(delegate);
|
||
|
label_button->Initialize();
|
||
|
if (!text.empty())
|
||
|
label_button->SetText(text);
|
||
|
if (with_frame)
|
||
|
label_button->root_view()->SetStyle(views::CustomButton::STYLE_BUTTON);
|
||
|
return label_button;
|
||
|
}
|
||
|
|
||
|
CefBasicLabelButtonImpl::CefBasicLabelButtonImpl(CefRefPtr<CefButtonDelegate> delegate)
|
||
|
: ParentClass(delegate) {
|
||
|
}
|
||
|
|
||
|
views::LabelButton* CefBasicLabelButtonImpl::CreateRootView() {
|
||
|
return new CefBasicLabelButtonView(delegate());
|
||
|
}
|