<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic ButtonClicked function do not work. in Archicad C++ API</title>
    <link>https://community.graphisoft.com/t5/Archicad-C-API/ButtonClicked-function-do-not-work/m-p/259308#M2303</link>
    <description>&lt;DIV class="actalk-migrated-content"&gt;Dear developers,&lt;BR /&gt;&lt;BR /&gt;I finished writing UI resource code.&lt;BR /&gt;But event handle working has difficult now.&lt;BR /&gt;&lt;BR /&gt;Next code is current working.&lt;BR /&gt;In the ButtonClicked function,&lt;BR /&gt;if (ev.GetSource () == &amp;amp;btn_OK) {&lt;BR /&gt;&lt;U&gt;&lt;/U&gt;&lt;S&gt;&lt;U&gt;&lt;U&gt;&lt;/U&gt;&lt;/U&gt;&lt;/S&gt;These codes are not working.&lt;BR /&gt;}&lt;BR /&gt;&lt;BR /&gt;Could you answer me about the cause?&lt;BR /&gt;&lt;BR /&gt;Environment : Windows 7 64Bit, ArchiCAD 19, API v19&lt;BR /&gt;&lt;BR /&gt;
&lt;PRE&gt;&lt;I&gt;
&lt;/I&gt;class placeEuroformDialog :	public DG::ModalDialog,
							public DG::ButtonItemObserver,
							public DG::CompoundItemObserver
{
protected:
	enum Controls {
		ButtonID		= 1,
		GroupboxID		= 2,
		LeftTextID		= 3,
		IntEditID		= 4,
		PopupControlID	= 5
	};

	DG::Button		btn_OK;
	DG::Button		btn_Cancel;
	DG::GroupBox	grp_placeCnt;
	DG::GroupBox	grp_euroformOptions;
	DG::LeftText	lbl_horCnt;
	DG::LeftText	lbl_verCnt;
	DG::LeftText	lbl_wid;
	DG::LeftText	lbl_hei;
	DG::LeftText	lbl_ori;
	DG::LeftText	lbl_inst;
	DG::IntEdit		edt_horCnt;
	DG::IntEdit		edt_verCnt;
	DG::PopUp		popup_wid;
	DG::PopUp		popup_hei;
	DG::PopUp		popup_ori;
	DG::PopUp		popup_inst;

	virtual void	ButtonClicked (const DG::ButtonClickEvent&amp;amp; ev) override;

public:
	placeEuroformDialog ();
	~placeEuroformDialog ();
};

placeEuroformDialog::placeEuroformDialog () :
		DG::ModalDialog		(ACAPI_GetOwnResModule (), 32600, ACAPI_GetOwnResModule ()),
		btn_OK				(GetReference (), ButtonID),
		btn_Cancel			(GetReference (), ButtonID),
		grp_placeCnt		(GetReference (), GroupboxID),
		grp_euroformOptions	(GetReference (), GroupboxID),
		lbl_horCnt			(GetReference (), LeftTextID),
		lbl_verCnt			(GetReference (), LeftTextID),
		lbl_wid				(GetReference (), LeftTextID),
		lbl_hei				(GetReference (), LeftTextID),
		lbl_ori				(GetReference (), LeftTextID),
		lbl_inst			(GetReference (), LeftTextID),
		edt_horCnt			(GetReference (), IntEditID),
		edt_verCnt			(GetReference (), IntEditID),
		popup_wid			(GetReference (), PopupControlID),
		popup_hei			(GetReference (), PopupControlID),
		popup_ori			(GetReference (), PopupControlID),
		popup_inst			(GetReference (), PopupControlID)
{
	AttachToAllItems (*this);
}

placeEuroformDialog::~placeEuroformDialog ()
{
	DetachFromAllItems (*this);
}

void placeEuroformDialog::ButtonClicked (const DG::ButtonClickEvent&amp;amp; ev)
{
	ACAPI_WriteReport ("This message is show.", true);

	if (ev.GetSource () == &amp;amp;btn_OK) {
		ACAPI_WriteReport ("OK Button... This message is not show.", true);
		PostCloseRequest (Accept);
	}
}

...

GSErrCode	placeEuroform (void)
{
	placeEuroformDialog	dialog;
	dialog.Invoke ();

	return NoError;
}

...

GSErrCode __ACENV_CALL	MenuCommandHandler (const API_MenuParams *menuParams)
{
	GSErrCode	err = NoError;

	switch (menuParams-&amp;gt;menuItemRef.menuResID) {
		case 32500:
			switch (menuParams-&amp;gt;menuItemRef.itemIndex) {
				case 1:		err = placeEuroform ();		break;
			}
			break;
	}

	return err;
}		// CommandHandler ()
&lt;/PRE&gt;
&lt;/DIV&gt;</description>
    <pubDate>Wed, 15 Sep 2021 09:58:11 GMT</pubDate>
    <dc:creator>Soonbum Jeong</dc:creator>
    <dc:date>2021-09-15T09:58:11Z</dc:date>
    <item>
      <title>ButtonClicked function do not work.</title>
      <link>https://community.graphisoft.com/t5/Archicad-C-API/ButtonClicked-function-do-not-work/m-p/259308#M2303</link>
      <description>&lt;DIV class="actalk-migrated-content"&gt;Dear developers,&lt;BR /&gt;&lt;BR /&gt;I finished writing UI resource code.&lt;BR /&gt;But event handle working has difficult now.&lt;BR /&gt;&lt;BR /&gt;Next code is current working.&lt;BR /&gt;In the ButtonClicked function,&lt;BR /&gt;if (ev.GetSource () == &amp;amp;btn_OK) {&lt;BR /&gt;&lt;U&gt;&lt;/U&gt;&lt;S&gt;&lt;U&gt;&lt;U&gt;&lt;/U&gt;&lt;/U&gt;&lt;/S&gt;These codes are not working.&lt;BR /&gt;}&lt;BR /&gt;&lt;BR /&gt;Could you answer me about the cause?&lt;BR /&gt;&lt;BR /&gt;Environment : Windows 7 64Bit, ArchiCAD 19, API v19&lt;BR /&gt;&lt;BR /&gt;
&lt;PRE&gt;&lt;I&gt;
&lt;/I&gt;class placeEuroformDialog :	public DG::ModalDialog,
							public DG::ButtonItemObserver,
							public DG::CompoundItemObserver
{
protected:
	enum Controls {
		ButtonID		= 1,
		GroupboxID		= 2,
		LeftTextID		= 3,
		IntEditID		= 4,
		PopupControlID	= 5
	};

	DG::Button		btn_OK;
	DG::Button		btn_Cancel;
	DG::GroupBox	grp_placeCnt;
	DG::GroupBox	grp_euroformOptions;
	DG::LeftText	lbl_horCnt;
	DG::LeftText	lbl_verCnt;
	DG::LeftText	lbl_wid;
	DG::LeftText	lbl_hei;
	DG::LeftText	lbl_ori;
	DG::LeftText	lbl_inst;
	DG::IntEdit		edt_horCnt;
	DG::IntEdit		edt_verCnt;
	DG::PopUp		popup_wid;
	DG::PopUp		popup_hei;
	DG::PopUp		popup_ori;
	DG::PopUp		popup_inst;

	virtual void	ButtonClicked (const DG::ButtonClickEvent&amp;amp; ev) override;

public:
	placeEuroformDialog ();
	~placeEuroformDialog ();
};

placeEuroformDialog::placeEuroformDialog () :
		DG::ModalDialog		(ACAPI_GetOwnResModule (), 32600, ACAPI_GetOwnResModule ()),
		btn_OK				(GetReference (), ButtonID),
		btn_Cancel			(GetReference (), ButtonID),
		grp_placeCnt		(GetReference (), GroupboxID),
		grp_euroformOptions	(GetReference (), GroupboxID),
		lbl_horCnt			(GetReference (), LeftTextID),
		lbl_verCnt			(GetReference (), LeftTextID),
		lbl_wid				(GetReference (), LeftTextID),
		lbl_hei				(GetReference (), LeftTextID),
		lbl_ori				(GetReference (), LeftTextID),
		lbl_inst			(GetReference (), LeftTextID),
		edt_horCnt			(GetReference (), IntEditID),
		edt_verCnt			(GetReference (), IntEditID),
		popup_wid			(GetReference (), PopupControlID),
		popup_hei			(GetReference (), PopupControlID),
		popup_ori			(GetReference (), PopupControlID),
		popup_inst			(GetReference (), PopupControlID)
{
	AttachToAllItems (*this);
}

placeEuroformDialog::~placeEuroformDialog ()
{
	DetachFromAllItems (*this);
}

void placeEuroformDialog::ButtonClicked (const DG::ButtonClickEvent&amp;amp; ev)
{
	ACAPI_WriteReport ("This message is show.", true);

	if (ev.GetSource () == &amp;amp;btn_OK) {
		ACAPI_WriteReport ("OK Button... This message is not show.", true);
		PostCloseRequest (Accept);
	}
}

...

GSErrCode	placeEuroform (void)
{
	placeEuroformDialog	dialog;
	dialog.Invoke ();

	return NoError;
}

...

GSErrCode __ACENV_CALL	MenuCommandHandler (const API_MenuParams *menuParams)
{
	GSErrCode	err = NoError;

	switch (menuParams-&amp;gt;menuItemRef.menuResID) {
		case 32500:
			switch (menuParams-&amp;gt;menuItemRef.itemIndex) {
				case 1:		err = placeEuroform ();		break;
			}
			break;
	}

	return err;
}		// CommandHandler ()
&lt;/PRE&gt;
&lt;/DIV&gt;</description>
      <pubDate>Wed, 15 Sep 2021 09:58:11 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Archicad-C-API/ButtonClicked-function-do-not-work/m-p/259308#M2303</guid>
      <dc:creator>Soonbum Jeong</dc:creator>
      <dc:date>2021-09-15T09:58:11Z</dc:date>
    </item>
    <item>
      <title>Re: ButtonClicked function do not work.</title>
      <link>https://community.graphisoft.com/t5/Archicad-C-API/ButtonClicked-function-do-not-work/m-p/259309#M2304</link>
      <description>&lt;PRE&gt;&lt;I&gt;
&lt;/I&gt;ButtonID		= 1,
&lt;/PRE&gt;

&lt;PRE&gt;		
btn_OK				(GetReference (), ButtonID),
btn_Cancel			(GetReference (), ButtonID),
&lt;/PRE&gt;

&lt;BR /&gt;
Each control must have a unique number (ID) exactly equal to the position in the 'GDLG' resource.</description>
      <pubDate>Sat, 11 Jul 2020 10:44:43 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Archicad-C-API/ButtonClicked-function-do-not-work/m-p/259309#M2304</guid>
      <dc:creator>Oleg</dc:creator>
      <dc:date>2020-07-11T10:44:43Z</dc:date>
    </item>
    <item>
      <title>Re: ButtonClicked function do not work.</title>
      <link>https://community.graphisoft.com/t5/Archicad-C-API/ButtonClicked-function-do-not-work/m-p/259310#M2305</link>
      <description>Dear Oleg,&lt;BR /&gt;
&lt;BR /&gt;
Your answer is exactly right.&lt;BR /&gt;
My source code did not have "unique" ID.&lt;BR /&gt;
After fixed code, my code works well.&lt;BR /&gt;
Thank you, Oleg.</description>
      <pubDate>Mon, 13 Jul 2020 00:31:57 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Archicad-C-API/ButtonClicked-function-do-not-work/m-p/259310#M2305</guid>
      <dc:creator>Soonbum Jeong</dc:creator>
      <dc:date>2020-07-13T00:31:57Z</dc:date>
    </item>
  </channel>
</rss>

