Back to index

unity  6.0.0
Public Types | Public Member Functions | Public Attributes | Protected Member Functions | Private Member Functions | Private Attributes
unity::PlacesGroup Class Reference

#include <PlacesGroup.h>

Inheritance diagram for unity::PlacesGroup:
Inheritance graph
[legend]
Collaboration diagram for unity::PlacesGroup:
Collaboration graph
[legend]

List of all members.

Public Types

typedef std::list
< Introspectable * > 
IntrospectableList

Public Member Functions

 PlacesGroup ()
void SetIcon (std::string const &icon)
void SetName (std::string const &name)
nux::StaticCairoTextGetLabel ()
nux::StaticCairoTextGetExpandLabel ()
void SetChildView (dash::ResultView *view)
nux::View * GetChildView ()
void SetChildLayout (nux::Layout *layout)
void Relayout ()
void SetCounts (guint n_visible_items_in_unexpand_mode, guint n_total_items)
void SetExpanded (bool is_expanded)
bool GetExpanded () const
int GetHeaderHeight () const
bool HeaderIsFocusable () const
nux::View * GetHeaderFocusableView () const
GVariant * Introspect ()
void AddChild (Introspectable *child)
void RemoveChild (Introspectable *child)
virtual IntrospectableList GetIntrospectableChildren ()
guint64 GetIntrospectionId () const

Public Attributes

sigc::signal< void, PlacesGroup * > expanded
nux::Property< bool > draw_separator

Protected Member Functions

long ComputeContentSize ()
void Draw (nux::GraphicsEngine &graphics_engine, bool force_draw)
void DrawContent (nux::GraphicsEngine &graphics_engine, bool force_draw)
void PostDraw (nux::GraphicsEngine &graphics_engine, bool force_draw)
virtual bool AcceptKeyNavFocus ()
virtual std::string GetName () const
virtual void AddProperties (GVariantBuilder *builder)
virtual std::string GetChildsName () const
 Please don't override this unless you really need to. The only valid reason is if you have a property that simply must be called 'Children'.

Private Member Functions

 NUX_DECLARE_OBJECT_TYPE (PlacesGroup, dash::AbstractPlacesGroup)
void Refresh ()
bool HeaderHasKeyFocus () const
bool ShouldBeHighlighted () const
void DrawSeparatorChanged (bool draw)
void RecvMouseClick (int x, int y, unsigned long button_flags, unsigned long key_flags)
void RecvMouseEnter (int x, int y, unsigned long button_flags, unsigned long key_flags)
void RecvMouseLeave (int x, int y, unsigned long button_flags, unsigned long key_flags)
void OnLabelActivated (nux::Area *label)
void OnLabelFocusChanged (nux::Area *label, bool has_focus, nux::KeyNavDirection direction)
bool OnIdleRelayout ()
void RefreshLabel ()

Private Attributes

nux::VLayout * _group_layout
nux::View * _header_view
nux::HLayout * _header_layout
nux::HLayout * _text_layout
nux::HLayout * _expand_label_layout
nux::HLayout * _expand_layout
nux::View * _child_view
nux::ObjectPtr< nux::HLayout > separator_layout_
HSeparatorseparator_
std::unique_ptr
< nux::AbstractPaintLayer > 
_focus_layer
IconTexture_icon
nux::StaticCairoText_name
nux::StaticCairoText_expand_label
IconTexture_expand_icon
bool _is_expanded
guint _n_visible_items_in_unexpand_mode
guint _n_total_items
std::string _cached_name
nux::Geometry _cached_geometry
glib::Source::UniquePtr _relayout_idle
UBusManager _ubus

Detailed Description

Definition at line 47 of file PlacesGroup.h.


Member Typedef Documentation

Definition at line 34 of file Introspectable.h.


Constructor & Destructor Documentation

Definition at line 106 of file PlacesGroup.cpp.

  : AbstractPlacesGroup(),
    _child_view(nullptr),
    _is_expanded(true),
    _n_visible_items_in_unexpand_mode(0),
    _n_total_items(0)
{
  dash::Style& style = dash::Style::Instance();

  SetAcceptKeyNavFocusOnMouseDown(false);
  SetAcceptKeyNavFocusOnMouseEnter(false);

  nux::BaseTexture* arrow = style.GetGroupUnexpandIcon();

  _group_layout = new nux::VLayout("", NUX_TRACKER_LOCATION);

  // -2 because the icons have an useless border.
  int top_space = style.GetPlacesGroupTopSpace() - 2;
  _group_layout->AddLayout(new nux::SpaceLayout(top_space, top_space, top_space, top_space), 0);

  _header_view = new HeaderView(NUX_TRACKER_LOCATION);
  _group_layout->AddView(_header_view, 0, nux::MINOR_POSITION_TOP, nux::MINOR_SIZE_FULL);

  _header_layout = new nux::HLayout(NUX_TRACKER_LOCATION);
  _header_layout->SetLeftAndRightPadding(style.GetCategoryHeaderLeftPadding(), 0);
  _header_layout->SetSpaceBetweenChildren(10);
  _header_view->SetLayout(_header_layout);

  _icon = new IconTexture("", 24);
  _icon->SetMinMaxSize(24, 24);
  _header_layout->AddView(_icon, 0, nux::MINOR_POSITION_CENTER, nux::MINOR_SIZE_FIX);

  _text_layout = new nux::HLayout(NUX_TRACKER_LOCATION);
  _text_layout->SetHorizontalInternalMargin(15);
  _header_layout->AddLayout(_text_layout, 0, nux::MINOR_POSITION_CENTER, nux::MINOR_SIZE_MATCHCONTENT);

  _name = new nux::StaticCairoText("", NUX_TRACKER_LOCATION);
  _name->SetFont(NAME_LABEL_FONT);
  _name->SetTextEllipsize(nux::StaticCairoText::NUX_ELLIPSIZE_END);
  _name->SetTextAlignment(nux::StaticCairoText::NUX_ALIGN_LEFT);
  _text_layout->AddView(_name, 0, nux::MINOR_POSITION_CENTER, nux::MINOR_SIZE_MATCHCONTENT);

  _expand_layout = new nux::HLayout(NUX_TRACKER_LOCATION);
  _expand_layout->SetHorizontalInternalMargin(8);
  _text_layout->AddLayout(_expand_layout, 0, nux::MINOR_POSITION_END, nux::MINOR_SIZE_MATCHCONTENT);

  _expand_label_layout = new nux::HLayout(NUX_TRACKER_LOCATION);
  _expand_layout->AddLayout(_expand_label_layout, 0, nux::MINOR_POSITION_CENTER, nux::MINOR_SIZE_MATCHCONTENT);

  _expand_label = new nux::StaticCairoText("", NUX_TRACKER_LOCATION);
  _expand_label->SetFont(EXPANDER_LABEL_FONT);
  _expand_label->SetTextEllipsize(nux::StaticCairoText::NUX_ELLIPSIZE_END);
  _expand_label->SetTextAlignment(nux::StaticCairoText::NUX_ALIGN_LEFT);
  _expand_label->SetTextColor(kExpandDefaultTextColor);
  _expand_label_layout->AddView(_expand_label, 0, nux::MINOR_POSITION_CENTER, nux::MINOR_SIZE_FIX);

  _expand_icon = new IconTexture(arrow, arrow->GetWidth(), arrow->GetHeight());
  _expand_icon->SetOpacity(kExpandDefaultIconOpacity);
  _expand_icon->SetMinimumSize(arrow->GetWidth(), arrow->GetHeight());
  _expand_icon->SetVisible(false);
  _expand_layout->AddView(_expand_icon, 0, nux::MINOR_POSITION_CENTER, nux::MINOR_SIZE_FIX);

  separator_layout_ = new nux::HLayout();
  separator_layout_->SetLeftAndRightPadding(style.GetCategorySeparatorLeftPadding(),
                                            style.GetCategorySeparatorRightPadding() - style.GetScrollbarWidth());

  separator_ = new HSeparator;
  separator_layout_->AddView(separator_, 1);

  draw_separator.changed.connect(sigc::mem_fun(this, &PlacesGroup::DrawSeparatorChanged));

  SetLayout(_group_layout);

  // don't need to disconnect these signals as they are disconnected when this object destroys the contents
  _header_view->mouse_click.connect(sigc::mem_fun(this, &PlacesGroup::RecvMouseClick));
  _header_view->key_nav_focus_change.connect(sigc::mem_fun(this, &PlacesGroup::OnLabelFocusChanged));
  _header_view->key_nav_focus_activate.connect(sigc::mem_fun(this, &PlacesGroup::OnLabelActivated));
  _icon->mouse_click.connect(sigc::mem_fun(this, &PlacesGroup::RecvMouseClick));
  _name->mouse_click.connect(sigc::mem_fun(this, &PlacesGroup::RecvMouseClick));
  _expand_label->mouse_click.connect(sigc::mem_fun(this, &PlacesGroup::RecvMouseClick));
  _expand_icon->mouse_click.connect(sigc::mem_fun(this, &PlacesGroup::RecvMouseClick));

  key_nav_focus_change.connect([&](nux::Area* area, bool has_focus, nux::KeyNavDirection direction)
  {
    if (!has_focus)
      return;

    if(direction == nux::KEY_NAV_UP)
      nux::GetWindowCompositor().SetKeyFocusArea(_child_view, direction);
    else
      nux::GetWindowCompositor().SetKeyFocusArea(GetHeaderFocusableView(), direction);
  });
}

Here is the call graph for this function:


Member Function Documentation

bool unity::PlacesGroup::AcceptKeyNavFocus ( ) [protected, virtual]

Definition at line 507 of file PlacesGroup.cpp.

{
  return true;
}

Definition at line 78 of file Introspectable.cpp.

{
  _children.push_back(child);
  child->_parents.push_back(this);
}

Here is the caller graph for this function:

void unity::PlacesGroup::AddProperties ( GVariantBuilder *  builder) [protected, virtual]

Implements unity::debug::Introspectable.

Definition at line 520 of file PlacesGroup.cpp.

{
  unity::variant::BuilderWrapper wrapper(builder);

  wrapper.add("header-x", _header_view->GetAbsoluteX());
  wrapper.add("header-y", _header_view->GetAbsoluteY());
  wrapper.add("header-width", _header_view->GetAbsoluteWidth());
  wrapper.add("header-height", _header_view->GetAbsoluteHeight());
  wrapper.add("header-has-keyfocus", HeaderHasKeyFocus());
  wrapper.add("header-is-highlighted", ShouldBeHighlighted());
  wrapper.add("name", _name->GetText());
  wrapper.add("is-visible", IsVisible());
  wrapper.add("is-expanded", GetExpanded());
  wrapper.add("expand-label-is-visible", _expand_label->IsVisible());
  wrapper.add("expand-label-y", _expand_label->GetAbsoluteY());
  wrapper.add("expand-label-baseline", _expand_label->GetBaseline());
  wrapper.add("name-label-y", _name->GetAbsoluteY());
  wrapper.add("name-label-baseline", _name->GetBaseline());
}

Here is the call graph for this function:

Definition at line 366 of file PlacesGroup.cpp.

{
  long ret = nux::View::ComputeContentSize();

  nux::Geometry const& geo = GetGeometry();

  if (_cached_geometry != geo)
  {
    _focus_layer.reset(dash::Style::Instance().FocusOverlay(geo.width - kHighlightLeftPadding - kHighlightRightPadding, kHighlightHeight));

    _cached_geometry = geo;
  }

  return ret;
}

Here is the call graph for this function:

Here is the caller graph for this function:

void unity::PlacesGroup::Draw ( nux::GraphicsEngine &  graphics_engine,
bool  force_draw 
) [protected]

Reimplemented from unity::dash::AbstractPlacesGroup.

Definition at line 382 of file PlacesGroup.cpp.

{
  nux::Geometry const& base = GetGeometry();
  graphics_engine.PushClippingRectangle(base);

  if (ShouldBeHighlighted())
  {
    nux::Geometry geo(_header_layout->GetGeometry());
    geo.width = base.width - kHighlightRightPadding - kHighlightLeftPadding;
    geo.x += kHighlightLeftPadding;

    _focus_layer->SetGeometry(geo);
    _focus_layer->Renderlayer(graphics_engine);
  }

  graphics_engine.PopClippingRectangle();
}

Here is the call graph for this function:

void unity::PlacesGroup::DrawContent ( nux::GraphicsEngine &  graphics_engine,
bool  force_draw 
) [protected]

Reimplemented from unity::dash::AbstractPlacesGroup.

Definition at line 402 of file PlacesGroup.cpp.

{
  nux::Geometry const& base = GetGeometry();

  graphics_engine.PushClippingRectangle(base);

  if (ShouldBeHighlighted() && !IsFullRedraw() && _focus_layer)
  {
    nux::GetPainter().PushLayer(graphics_engine, _focus_layer->GetGeometry(), _focus_layer.get());
  }

  _group_layout->ProcessDraw(graphics_engine, force_draw);

  graphics_engine.PopClippingRectangle();
}

Here is the call graph for this function:

void unity::PlacesGroup::DrawSeparatorChanged ( bool  draw) [private]

Definition at line 200 of file PlacesGroup.cpp.

{
  if (draw and !separator_layout_->IsChildOf(_group_layout))
    _group_layout->AddView(separator_layout_.GetPointer(), 0);
  else if (!draw and separator_layout_->IsChildOf(_group_layout))
    _group_layout->RemoveChildObject(separator_layout_.GetPointer());
  QueueDraw();
}

Here is the caller graph for this function:

std::string unity::debug::Introspectable::GetChildsName ( ) const [protected, virtual, inherited]

Please don't override this unless you really need to. The only valid reason is if you have a property that simply must be called 'Children'.

Definition at line 92 of file Introspectable.cpp.

{
  return "Children";
}

Here is the caller graph for this function:

Definition at line 280 of file PlacesGroup.cpp.

{
  return _child_view;
}

Here is the caller graph for this function:

Definition at line 432 of file PlacesGroup.cpp.

{
  return _is_expanded;
}

Here is the caller graph for this function:

Definition at line 244 of file PlacesGroup.cpp.

{
  return _expand_label;
}

Here is the caller graph for this function:

Definition at line 493 of file PlacesGroup.cpp.

{
  return _header_view;
}

Here is the caller graph for this function:

Definition at line 478 of file PlacesGroup.cpp.

{
  return _header_layout->GetGeometry().height;
}
Introspectable::IntrospectableList unity::debug::Introspectable::GetIntrospectableChildren ( ) [virtual, inherited]

Reimplemented in unity::hud::View, unity::launcher::LauncherModel, unity::QuicklistView, and unity::dash::ResultView.

Definition at line 41 of file Introspectable.cpp.

{
  return _children;
}

Here is the caller graph for this function:

guint64 unity::debug::Introspectable::GetIntrospectionId ( ) const [inherited]

Definition at line 97 of file Introspectable.cpp.

{
  return _id;
}

Here is the caller graph for this function:

Definition at line 238 of file PlacesGroup.cpp.

{
  return _name;
}

Here is the caller graph for this function:

std::string unity::PlacesGroup::GetName ( ) const [protected, virtual]

Implements unity::debug::Introspectable.

Definition at line 515 of file PlacesGroup.cpp.

{
  return "PlacesGroup";
}
bool unity::PlacesGroup::HeaderHasKeyFocus ( ) const [private]

Definition at line 483 of file PlacesGroup.cpp.

{
  return (_header_view && _header_view->HasKeyFocus());
}

Here is the caller graph for this function:

Definition at line 488 of file PlacesGroup.cpp.

{
  return (_header_view != nullptr);
}
GVariant * unity::debug::Introspectable::Introspect ( ) [inherited]

Definition at line 47 of file Introspectable.cpp.

{
  GVariantBuilder  builder;
  GVariantBuilder  child_builder;
  gint             n_children = 0;

  g_variant_builder_init(&builder, G_VARIANT_TYPE("a{sv}"));
  g_variant_builder_add(&builder, "{sv}", "id", g_variant_new_uint64(_id));

  AddProperties(&builder);

  g_variant_builder_init(&child_builder, G_VARIANT_TYPE("as"));

  auto children = GetIntrospectableChildren();
  for (auto it = children.begin(); it != children.end(); it++)
  {
    if ((*it)->GetName() != "")
    {
      g_variant_builder_add(&child_builder, "s", (*it)->GetName().c_str());
      n_children++;
    }
  }

  GVariant* child_results = g_variant_builder_end(&child_builder);

  if (n_children > 0)
    g_variant_builder_add(&builder, "{sv}", GetChildsName().c_str(), child_results);
  return g_variant_builder_end(&builder);
}

Here is the call graph for this function:

Definition at line 351 of file PlacesGroup.cpp.

{
  if (GetChildView())
  {
    Refresh();
    QueueDraw();
    _group_layout->QueueDraw();
    GetChildView()->QueueDraw();
    ComputeContentSize();
    _relayout_idle.reset();
  }

  return false;
}

Here is the call graph for this function:

Here is the caller graph for this function:

void unity::PlacesGroup::OnLabelActivated ( nux::Area *  label) [private]

Definition at line 210 of file PlacesGroup.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void unity::PlacesGroup::OnLabelFocusChanged ( nux::Area *  label,
bool  has_focus,
nux::KeyNavDirection  direction 
) [private]

Definition at line 216 of file PlacesGroup.cpp.

{
  if (HeaderHasKeyFocus())
  {
    _ubus.SendMessage(UBUS_RESULT_VIEW_KEYNAV_CHANGED,
                      g_variant_new("(iiii)", 0, 0, 0, 0));
  }

  QueueDraw();
}

Here is the call graph for this function:

Here is the caller graph for this function:

void unity::PlacesGroup::PostDraw ( nux::GraphicsEngine &  graphics_engine,
bool  force_draw 
) [protected]

Definition at line 418 of file PlacesGroup.cpp.

{
}
void unity::PlacesGroup::RecvMouseClick ( int  x,
int  y,
unsigned long  button_flags,
unsigned long  key_flags 
) [private]

Definition at line 460 of file PlacesGroup.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void unity::PlacesGroup::RecvMouseEnter ( int  x,
int  y,
unsigned long  button_flags,
unsigned long  key_flags 
) [private]

Definition at line 466 of file PlacesGroup.cpp.

{
  QueueDraw();
}
void unity::PlacesGroup::RecvMouseLeave ( int  x,
int  y,
unsigned long  button_flags,
unsigned long  key_flags 
) [private]

Definition at line 472 of file PlacesGroup.cpp.

{
  QueueDraw();
}
void unity::PlacesGroup::Refresh ( ) [private]

Definition at line 332 of file PlacesGroup.cpp.

{
  RefreshLabel();
  ComputeContentSize();
  QueueDraw();
}

Here is the call graph for this function:

Here is the caller graph for this function:

Definition at line 292 of file PlacesGroup.cpp.

{
  std::string result_string;

  if (_n_visible_items_in_unexpand_mode < _n_total_items)
  {
    if (_is_expanded)
    {
      result_string = _("See fewer results");
    }
    else
    {
      LOG_DEBUG(logger) << _n_total_items << " - " << _n_visible_items_in_unexpand_mode;
      result_string = glib::String(g_strdup_printf(g_dngettext(GETTEXT_PACKAGE,
                                                  "See one more result",
                                                  "See %d more results",
                                                  _n_total_items - _n_visible_items_in_unexpand_mode),
                                      _n_total_items - _n_visible_items_in_unexpand_mode)).Str();
    }
  }

  _expand_icon->SetVisible(!(_n_visible_items_in_unexpand_mode >= _n_total_items && _n_total_items != 0));
  SetName(_cached_name);

  _expand_label->SetText(result_string);
  _expand_label->SetVisible(_n_visible_items_in_unexpand_mode < _n_total_items);

  // See bug #748101 ("Dash - "See more..." line should be base-aligned with section header")
  // We're making two assumptions here:
  // [a] The font size _name is bigger than the font size of _expand_label
  // [b] The bottom sides have the same y coordinate
  int bottom_padding = _name->GetBaseHeight() - _name->GetBaseline() -
                       (_expand_label->GetBaseHeight() - _expand_label->GetBaseline());

  _expand_label_layout->SetTopAndBottomPadding(0, bottom_padding);

  QueueDraw();
}

Here is the call graph for this function:

Here is the caller graph for this function:

Definition at line 341 of file PlacesGroup.cpp.

{
  if (_relayout_idle)
    return;

  _relayout_idle.reset(new glib::Idle(glib::Source::Priority::HIGH));
  _relayout_idle->Run(sigc::mem_fun(this, &PlacesGroup::OnIdleRelayout));
}

Here is the call graph for this function:

Here is the caller graph for this function:

Definition at line 85 of file Introspectable.cpp.

{
  _children.remove(child);
  child->_parents.remove(this);
}

Here is the caller graph for this function:

void unity::PlacesGroup::SetChildLayout ( nux::Layout *  layout)

Definition at line 285 of file PlacesGroup.cpp.

{
  _group_layout->AddLayout(layout, 1);
  QueueDraw();
}

Definition at line 256 of file PlacesGroup.cpp.

{
  debug::Introspectable *i = dynamic_cast<debug::Introspectable*>(view);
  if (i)
    AddChild(i);
  _child_view = view;

  nux::VLayout* layout = new nux::VLayout();
  layout->AddView(_child_view, 0);

  layout->SetLeftAndRightPadding(25, 0);
  _group_layout->AddLayout(new nux::SpaceLayout(8,8,8,8), 0); // top padding
  _group_layout->AddLayout(layout, 1);

  view->results_per_row.changed.connect([&] (int results_per_row) 
  {
    _n_visible_items_in_unexpand_mode = results_per_row;  
    RefreshLabel();
  });

  QueueDraw();
}

Here is the call graph for this function:

void unity::PlacesGroup::SetCounts ( guint  n_visible_items_in_unexpand_mode,
guint  n_total_items 
)

Definition at line 424 of file PlacesGroup.cpp.

{
  _n_total_items = n_total_items;

  Relayout();
}

Here is the call graph for this function:

Here is the caller graph for this function:

void unity::PlacesGroup::SetExpanded ( bool  is_expanded)

Definition at line 438 of file PlacesGroup.cpp.

{
  if (_is_expanded == is_expanded)
    return;

  if (is_expanded && _n_total_items <= _n_visible_items_in_unexpand_mode)
    return;

  _is_expanded = is_expanded;

  Refresh();

  dash::Style& style = dash::Style::Instance();
  if (_is_expanded)
    _expand_icon->SetTexture(style.GetGroupUnexpandIcon());
  else
    _expand_icon->SetTexture(style.GetGroupExpandIcon());

  expanded.emit(this);
}

Here is the call graph for this function:

Here is the caller graph for this function:

void unity::PlacesGroup::SetIcon ( std::string const &  icon)

Definition at line 250 of file PlacesGroup.cpp.

{
  _icon->SetByIconName(path_to_emblem, 24);
}

Here is the call graph for this function:

void unity::PlacesGroup::SetName ( std::string const &  name)

Definition at line 228 of file PlacesGroup.cpp.

{
  if (_cached_name != name)
  {
    _cached_name = name;
    _name->SetText(glib::String(g_markup_escape_text(name.c_str(), -1)).Str());
  }
}

Here is the call graph for this function:

Here is the caller graph for this function:

bool unity::PlacesGroup::ShouldBeHighlighted ( ) const [private]

Definition at line 498 of file PlacesGroup.cpp.

{
  return HeaderHasKeyFocus();
}

Here is the call graph for this function:

Here is the caller graph for this function:


Member Data Documentation

nux::Geometry unity::PlacesGroup::_cached_geometry [private]

Definition at line 127 of file PlacesGroup.h.

std::string unity::PlacesGroup::_cached_name [private]

Definition at line 126 of file PlacesGroup.h.

nux::View* unity::PlacesGroup::_child_view [private]

Definition at line 113 of file PlacesGroup.h.

Definition at line 121 of file PlacesGroup.h.

Definition at line 120 of file PlacesGroup.h.

Definition at line 111 of file PlacesGroup.h.

nux::HLayout* unity::PlacesGroup::_expand_layout [private]

Definition at line 112 of file PlacesGroup.h.

std::unique_ptr<nux::AbstractPaintLayer> unity::PlacesGroup::_focus_layer [private]

Definition at line 116 of file PlacesGroup.h.

nux::VLayout* unity::PlacesGroup::_group_layout [private]

Definition at line 107 of file PlacesGroup.h.

nux::HLayout* unity::PlacesGroup::_header_layout [private]

Definition at line 109 of file PlacesGroup.h.

nux::View* unity::PlacesGroup::_header_view [private]

Definition at line 108 of file PlacesGroup.h.

Definition at line 118 of file PlacesGroup.h.

Definition at line 123 of file PlacesGroup.h.

Definition at line 125 of file PlacesGroup.h.

Definition at line 124 of file PlacesGroup.h.

Definition at line 119 of file PlacesGroup.h.

Definition at line 129 of file PlacesGroup.h.

nux::HLayout* unity::PlacesGroup::_text_layout [private]

Definition at line 110 of file PlacesGroup.h.

Definition at line 130 of file PlacesGroup.h.

nux::Property<bool> unity::dash::AbstractPlacesGroup::draw_separator [inherited]

Definition at line 39 of file AbstractPlacesGroup.h.

Definition at line 76 of file PlacesGroup.h.

Definition at line 115 of file PlacesGroup.h.

nux::ObjectPtr<nux::HLayout> unity::PlacesGroup::separator_layout_ [private]

Definition at line 114 of file PlacesGroup.h.


The documentation for this class was generated from the following files: