electron/atom/browser/api/views/atom_api_box_layout.h

41 lines
1 KiB
C
Raw Normal View History

2018-05-22 08:08:27 +00:00
// Copyright (c) 2018 GitHub, Inc.
// Use of this source code is governed by the MIT license that can be
// found in the LICENSE file.
#ifndef ATOM_BROWSER_API_VIEWS_ATOM_API_BOX_LAYOUT_H_
#define ATOM_BROWSER_API_VIEWS_ATOM_API_BOX_LAYOUT_H_
2018-05-22 08:08:27 +00:00
#include "atom/browser/api/views/atom_api_layout_manager.h"
2018-05-23 04:30:57 +00:00
#include "native_mate/handle.h"
2018-05-22 08:08:27 +00:00
#include "ui/views/layout/box_layout.h"
namespace atom {
namespace api {
2018-05-23 04:30:57 +00:00
class View;
2018-05-22 08:08:27 +00:00
class BoxLayout : public LayoutManager {
public:
static mate::WrappableBase* New(mate::Arguments* args,
views::BoxLayout::Orientation orientation);
static void BuildPrototype(v8::Isolate* isolate,
v8::Local<v8::FunctionTemplate> prototype);
2018-05-23 04:30:57 +00:00
void SetFlexForView(mate::Handle<View> view, int flex);
2018-05-22 08:08:27 +00:00
protected:
explicit BoxLayout(views::BoxLayout::Orientation orientation);
~BoxLayout() override;
private:
DISALLOW_COPY_AND_ASSIGN(BoxLayout);
};
} // namespace api
} // namespace atom
#endif // ATOM_BROWSER_API_VIEWS_ATOM_API_BOX_LAYOUT_H_