コード例 #1
0
ファイル: checkbox.cpp プロジェクト: a397871706/plug
		void radio_group::add(checkbox& uiobj)
		{
			uiobj.radio(true);
			uiobj.check(false);
			uiobj.react(false);

			element_tag el;

			el.uiobj = &uiobj;
			el.eh_checked = uiobj.events().click.connect_unignorable([this](const arg_click& arg)
			{
				for (auto & i : ui_container_)
					i.uiobj->check(arg.window_handle == i.uiobj->handle());
			}, true);

			el.eh_destroy = uiobj.events().destroy.connect_unignorable([this](const arg_destroy& arg)
			{
				for (auto i = ui_container_.begin(); i != ui_container_.end(); ++i)
				{
					if (arg.window_handle == i->uiobj->handle())
					{
						ui_container_.erase(i);
						return;
					}
				}
			});

			ui_container_.push_back(el);
		}
コード例 #2
0
ファイル: checkbox.cpp プロジェクト: kirbyfan64/nana
		void radio_group::add(checkbox& uiobj)
		{
			uiobj.radio(true);
			uiobj.check(false);
			uiobj.react(false);

			element_tag el;

			el.uiobj = &uiobj;
			el.eh_checked = API::dev::make_event(events::click::identifier, uiobj, nana::make_fun(*this, &radio_group::_m_checked), true);
			el.eh_destroy = uiobj.make_event<events::destroy>(*this, &radio_group::_m_destroy);

			ui_container_.push_back(el);
		}