Example #1
0
CL_ListView::CL_ListView(CL_GUIComponent *parent)
: CL_GUIComponent(parent), impl(new CL_ListView_Impl)
{
	set_type_name("listview");
	set_focus_policy(focus_local);
	impl->listview = this;

	impl->renderer = new CL_ListViewRenderer(this);
	impl->renderer->create_parts();
	impl->renderer->set_icon_list(impl->icon_list);

	impl->create_components();

	func_process_message().set(impl.get(), &CL_ListView_Impl::on_process_message);
	func_render().set(impl.get(), &CL_ListView_Impl::on_render);
	func_resized().set(impl.get(), &CL_ListView_Impl::on_resized);
	func_style_changed().set(impl.get(), &CL_ListView_Impl::on_style_changed);

	impl->document_item.impl->func_item_added.set(impl.get(), &CL_ListView_Impl::on_item_added);
	impl->document_item.impl->func_item_modified.set(impl.get(), &CL_ListView_Impl::on_item_modified);
	impl->document_item.impl->func_item_deleted.set(impl.get(), &CL_ListView_Impl::on_item_deleted);
	impl->create_parts();

	set_display_mode(listview_mode_details);

//	impl->update_part_positions();
}
Example #2
0
TabPage::TabPage(GUIComponent *parent)
: GUIComponent(parent, CssStr::TabPage::type_name), impl(new TabPage_Impl)
{
	impl->component = this;
	func_process_message().set(impl.get(), &TabPage_Impl::on_process_message);
	func_render().set(impl.get(), &TabPage_Impl::on_render);
	func_resized().set(impl.get(), &TabPage_Impl::on_resized);
}
Example #3
0
ToolBar::ToolBar(GUIComponent *parent)
    : GUIComponent(parent, CssStr::ToolBar::type_name), impl(new ToolBar_Impl)
{
    set_class("horizontal", true);
    impl->toolbar = this;
    func_process_message().set(impl.get(), &ToolBar_Impl::on_process_message);
    func_render().set(impl.get(), &ToolBar_Impl::on_render);
    func_resized().set(impl.get(), &ToolBar_Impl::on_resized);
    impl->create_parts();
}
Example #4
0
ToolTip::ToolTip(GUIManager manager)
: GUIComponent(&manager, ToolTip_Impl::create_description(), CssStr::ToolTip::type_name), impl(new ToolTip_Impl)
{
	impl->tooltip = this;

	func_process_message().set(impl.get(), &ToolTip_Impl::on_process_message);
	func_render().set(impl.get(), &ToolTip_Impl::on_render);

	impl->timer_show_delayed.func_expired().set(impl.get(), &ToolTip_Impl::on_show_delayed);
	impl->slot_filter_message = get_gui_manager().sig_filter_message().connect(impl.get(), &ToolTip_Impl::on_filter_message);
}
Example #5
0
ToolTip::ToolTip(GUIManager manager)
: GUIComponent(&manager, ToolTip_Impl::create_description(), CssStr::ToolTip::type_name), impl(std::make_shared<ToolTip_Impl>())
{
	impl->tooltip = this;

	func_process_message() = bind_member(impl.get(), &ToolTip_Impl::on_process_message);
	func_render() = bind_member(impl.get(), &ToolTip_Impl::on_render);

	impl->timer_show_delayed.func_expired() = bind_member(impl.get(), &ToolTip_Impl::on_show_delayed);
	impl->sc.connect(get_gui_manager().sig_filter_message(), bind_member(impl.get(), &ToolTip_Impl::on_filter_message));
}
CL_ListViewHeader::CL_ListViewHeader(CL_GUIComponent *parent)
: CL_GUIComponent(parent), impl(new CL_ListViewHeader_Impl)
{
	set_type_name(CssStr::ListView::Header::type_name);
	impl->listview_header = this;
	func_process_message().set(impl.get(), &CL_ListViewHeader_Impl::on_process_message);
	func_render().set(impl.get(), &CL_ListViewHeader_Impl::on_render);
	// todo: resize (?)
	// todo: disabled
	impl->create_parts();
}
Example #7
0
Toolbar::Toolbar(const CL_Rect &position, CL_GUIComponent* owner)
: CL_GUIComponent(owner, get_toplevel_description(position)), selected_index(-1), clicked_index(-1)
{
	set_type_name("toolbar");

	func_render().set(this, &Toolbar::on_render);
	func_style_changed().set(this, &Toolbar::on_style_changed);
	func_process_message().set(this, &Toolbar::on_process_message);

	create_parts();
}
Example #8
0
ProgressBar::ProgressBar(GUIComponent *parent)
: GUIComponent(parent, CssStr::ProgressBar::type_name), impl(std::make_shared<ProgressBar_Impl>())
{
	impl->progressbar = this;
	impl->part_progress = GUIThemePart(this, "progress");
	impl->part_chunk = GUIThemePart(this, "chunk");

	impl->progressbar->set_pseudo_class(CssStr::normal, true);

	func_process_message() = bind_member(impl.get(), &ProgressBar_Impl::on_process_message);
	func_render() = bind_member(impl.get(), &ProgressBar_Impl::on_render);
}
Example #9
0
CL_MenuBar::CL_MenuBar( CL_GUIComponent *parent)
: CL_GUIComponent(parent), impl(new CL_MenuBar_Impl)
{
	set_type_name(CssStr::MenuBar::type_name);
	impl->menubar = this;
	func_process_message().set(impl.get(), &CL_MenuBar_Impl::on_process_message);
	func_render().set(impl.get(), &CL_MenuBar_Impl::on_render);
	func_resized().set(impl.get(), &CL_MenuBar_Impl::on_resized);
	func_style_changed().set(impl.get(), &CL_MenuBar_Impl::on_style_changed);

	impl->create_parts();
}
Example #10
0
TabHeader::TabHeader(GUIComponent *parent)
: GUIComponent(parent, CssStr::Tab::Header::type_name), impl(new TabHeader_Impl)
{
	set_focus_policy(focus_local);
	impl->component = this;
	func_process_message().set(impl.get(), &TabHeader_Impl::on_process_message);
	func_render().set(impl.get(), &TabHeader_Impl::on_render);
	// todo: enablemode, resize

	impl->part_focus = GUIThemePart(this, CssStr::Tab::Header::part_focus);
	impl->first_tab_x_offset = get_property_int(CssStr::first_tab_x_offset, "0");

}
Example #11
0
CL_TabHeader::CL_TabHeader(CL_GUIComponent *parent)
: CL_GUIComponent(parent), impl(new CL_TabHeader_Impl)
{
	set_type_name(CssStr::Tab::Header::type_name);
	set_focus_policy(focus_local);
	impl->component = this;
	func_process_message().set(impl.get(), &CL_TabHeader_Impl::on_process_message);
	func_render().set(impl.get(), &CL_TabHeader_Impl::on_render);
	func_style_changed().set(impl.get(), &CL_TabHeader_Impl::on_style_changed);
	// todo: enablemode, resize

	impl->on_style_changed();
}
Example #12
0
RadioButton::RadioButton(GUIComponent *parent)
: GUIComponent(parent, CssStr::RadioButton::type_name), impl(new RadioButton_Impl)
{
	set_focus_policy(focus_group);

	impl->radio = this;

	impl->create_parts();

	func_process_message().set(impl.get(), &RadioButton_Impl::on_process_message);
	func_render().set(impl.get(), &RadioButton_Impl::on_render);
	func_enablemode_changed().set(impl.get(), &RadioButton_Impl::on_enablemode_changed);
}
Example #13
0
Tab::Tab(GUIComponent *parent)
: GUIComponent(parent, CssStr::Tab::type_name), impl(new Tab_Impl)
{
	impl->tab = this;
	func_process_message().set(impl.get(), &Tab_Impl::on_process_message);
	func_render().set(impl.get(), &Tab_Impl::on_render);
	func_resized().set(impl.get(), &Tab_Impl::on_resized);

	impl->tab_header = new TabHeader(this);

	impl->tab_header->func_page_selected().set(impl.get(), &Tab_Impl::on_header_page_selected);

}
Example #14
0
ScrollBar::ScrollBar(GUIComponent *parent)
: GUIComponent(parent, CssStr::ScrollBar::type_name), impl(new ScrollBar_Impl)
{
	impl->scrollbar = this;

	impl->create_parts();
	impl->update_part_positions();

	func_process_message().set(impl.get(), &ScrollBar_Impl::on_process_message);
	func_render().set(impl.get(), &ScrollBar_Impl::on_render);
	func_enablemode_changed().set(impl.get(), &ScrollBar_Impl::on_enablemode_changed);
	func_resized().set(impl.get(), &ScrollBar_Impl::on_resized);

	impl->mouse_down_timer.func_expired().set(impl.get(), &ScrollBar_Impl::on_timer_expired);
}
Example #15
0
RadialMenu::RadialMenu(CL_GUIComponent *parent)
: CL_GUIComponent(parent)
{
	set_type_name("radialmenu");

	func_render().set(this, &RadialMenu::on_render);
	func_style_changed().set(this, &RadialMenu::on_style_changed);
	func_resized().set(this, &RadialMenu::on_resized);
	func_process_message().set(this, &RadialMenu::on_process_message);

	create_parts();
	
	clear_items();

	set_visible(false);
}
Example #16
0
ViewWorkspace::ViewWorkspace(clan::GUIComponent *parent)
: clan::GUIComponent(parent, "workspace"), hot(false), current_page_index(0)
{
	func_render().set(this, &ViewWorkspace::on_render);
	func_resized().set(this, &ViewWorkspace::on_resized);
	func_process_message().set(this, &ViewWorkspace::on_process_message);

	clan::Canvas canvas = get_canvas();
	
	part_tab = clan::GUIThemePart(this, "workspacetab");
	font_tab = clan::Font(canvas, "Tahoma", -11);//part_background.get_font();
	image_cross = clan::Image(canvas, "Resources/cross-small.png");
	image_cross_hot = clan::Image(canvas, "Resources/cross-small-hot.png");
	image_cross_empty = clan::Image(canvas, "Resources/cross-small-empty.png");
	on_resized();
}
Example #17
0
GameComponent::GameComponent(const Rect &position, GUIManager* gui_manager)
: GUIComponent(gui_manager, GUITopLevelDescription(position, false), "game_component"),
  radial_menu(0)
{
	set_constant_repaint(true);

	func_render().set(this, &GameComponent::on_render);
	func_process_message().set(this, &GameComponent::on_message);

	Canvas canvas = get_canvas();
	background = Image(canvas, "Resources/Images/background.jpg");

	radial_menu = new RadialMenu(this);
	radial_menu->func_selected.set(this, &GameComponent::on_radial_menu_itemselected);

	font = clan::Font(canvas, "Tahoma", -30);
}
Example #18
0
CL_ScrollBar::CL_ScrollBar(CL_GUIComponent *parent)
: CL_GUIComponent(parent), impl(new CL_ScrollBar_Impl)
{
	set_type_name(CssStr::ScrollBar::type_name);
	// set_state(CssStr::normal, true);

	impl->scrollbar = this;

	impl->create_parts();
	impl->update_part_positions();

	func_process_message().set(impl.get(), &CL_ScrollBar_Impl::on_process_message);
	func_render().set(impl.get(), &CL_ScrollBar_Impl::on_render);
	func_enablemode_changed().set(impl.get(), &CL_ScrollBar_Impl::on_enablemode_changed);
	func_resized().set(impl.get(), &CL_ScrollBar_Impl::on_resized);

	impl->mouse_down_timer.func_expired().set(impl.get(), &CL_ScrollBar_Impl::on_timer_expired);
}
GameViewBattle::GameViewBattle(GameView *view, Client *client)
: CL_GUIComponent(view), view(view), client(client)
{
	set_type_name("battle");
	set_geometry(CL_Rect(view->get_width() - 400, 0, view->get_width(), 300));
	set_visible(false);

	func_render().set(this, &GameViewBattle::on_render);
	func_process_message().set(this, &GameViewBattle::on_message);

	timer_hide.func_expired().set(this, &GameViewBattle::on_timer_hide_expired);

	CL_Texture texture_dice(get_gc(), "Resources/dices.png", CL_VirtualDirectory());
	CL_SpriteDescription dice_description;
	dice_description.add_gridclipped_frames(texture_dice, 0, 0, 42, 45, 6, 1);
	sprite_dices = CL_Sprite(get_gc(), dice_description);

	font_large = CL_Font(get_gc(), "Accidental Presidency", -40);
	font_small = CL_Font(get_gc(), "Accidental Presidency", -30);
}