Merge pull request #15 from specklesystems/david/wire-in-view-button
view button on modelcard works
This commit is contained in:
@@ -105,6 +105,7 @@
|
||||
<ClCompile Include="Connector\Interface\Browser\Bridge\Base\GetSourceApplicationName.cpp" />
|
||||
<ClCompile Include="Connector\Interface\Browser\Bridge\Base\GetSourceApplicationVersion.cpp" />
|
||||
<ClCompile Include="Connector\Interface\Browser\Bridge\Base\HighlightModel.cpp" />
|
||||
<ClCompile Include="Connector\Interface\Browser\Bridge\Base\OpenUrl.cpp" />
|
||||
<ClCompile Include="Connector\Interface\Browser\Bridge\Base\RemoveModel.cpp" />
|
||||
<ClCompile Include="Connector\Interface\Browser\Bridge\Base\UpdateModel.cpp" />
|
||||
<ClCompile Include="Connector\Interface\Browser\Bridge\Config\Arg\ConnectorConfig.cpp" />
|
||||
@@ -161,6 +162,7 @@
|
||||
<ClInclude Include="Connector\Interface\Browser\Bridge\Base\GetSourceApplicationName.h" />
|
||||
<ClInclude Include="Connector\Interface\Browser\Bridge\Base\GetSourceApplicationVersion.h" />
|
||||
<ClInclude Include="Connector\Interface\Browser\Bridge\Base\HighlightModel.h" />
|
||||
<ClInclude Include="Connector\Interface\Browser\Bridge\Base\OpenUrl.h" />
|
||||
<ClInclude Include="Connector\Interface\Browser\Bridge\Base\RemoveModel.h" />
|
||||
<ClInclude Include="Connector\Interface\Browser\Bridge\Base\UpdateModel.h" />
|
||||
<ClInclude Include="Connector\Interface\Browser\Bridge\Config\Arg\ConnectorConfig.h" />
|
||||
|
||||
@@ -246,6 +246,9 @@
|
||||
<ClCompile Include="Connector\Interface\Browser\Bridge\Base\HighlightModel.cpp">
|
||||
<Filter>Connector\Interface\Browser\Bridge\Base</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="Connector\Interface\Browser\Bridge\Base\OpenUrl.cpp">
|
||||
<Filter>Connector\Interface\Browser\Bridge\Base</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="Connector\ConnectorResource.h">
|
||||
@@ -417,5 +420,8 @@
|
||||
<ClInclude Include="Connector\Interface\Browser\Bridge\Base\HighlightModel.h">
|
||||
<Filter>Connector\Interface\Browser\Bridge\Base</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="Connector\Interface\Browser\Bridge\Base\OpenUrl.h">
|
||||
<Filter>Connector\Interface\Browser\Bridge\Base</Filter>
|
||||
</ClInclude>
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
@@ -8,6 +8,7 @@
|
||||
#include "Connector/Interface/Browser/Bridge/Base/RemoveModel.h"
|
||||
#include "Connector/Interface/Browser/Bridge/Base/UpdateModel.h"
|
||||
#include "Connector/Interface/Browser/Bridge/Base/HighlightModel.h"
|
||||
#include "Connector/Interface/Browser/Bridge/Base/OpenUrl.h"
|
||||
#include "Speckle/Event/Type/ProjectEvent.h"
|
||||
|
||||
using namespace connector::interfac::browser::bridge;
|
||||
@@ -26,6 +27,7 @@ BaseBridge::BaseBridge() : BrowserBridge{"baseBinding"} {
|
||||
addMethod<RemoveModel>();
|
||||
addMethod<UpdateModel>();
|
||||
addMethod<HighlightModel>();
|
||||
addMethod<OpenUrl>();
|
||||
} //BaseBridge::BaseBridge
|
||||
|
||||
/*--------------------------------------------------------------------
|
||||
|
||||
@@ -0,0 +1,22 @@
|
||||
#include "Connector/Interface/Browser/Bridge/Base/OpenUrl.h"
|
||||
|
||||
using namespace connector::interfac::browser::bridge;
|
||||
using namespace speckle::utility;
|
||||
|
||||
/*--------------------------------------------------------------------
|
||||
Default constructor
|
||||
--------------------------------------------------------------------*/
|
||||
OpenUrl::OpenUrl() : BridgeMethod{"OpenUrl", [&](const SendArgs& args) {
|
||||
run(args);
|
||||
}} {}
|
||||
|
||||
|
||||
/*--------------------------------------------------------------------
|
||||
Opens an url
|
||||
|
||||
url: The URL to open
|
||||
--------------------------------------------------------------------*/
|
||||
void OpenUrl::run(const String& url) const {
|
||||
std::string command = "start " + url;
|
||||
system(command.c_str());
|
||||
} //OpenUrl::run
|
||||
@@ -0,0 +1,41 @@
|
||||
#ifndef CONNECTOR_INTERFACE_BRIDGE_OPEN_URL
|
||||
#define CONNECTOR_INTERFACE_BRIDGE_OPEN_URL
|
||||
|
||||
#include "Active/Serialise/CargoHold.h"
|
||||
#include "Active/Serialise/Item/Wrapper/ValueWrap.h"
|
||||
#include "Speckle/Interface/Browser/Bridge/BridgeMethod.h"
|
||||
|
||||
namespace connector::interfac::browser::bridge {
|
||||
|
||||
class ConnectorConfig;
|
||||
|
||||
///Argument parameter for a string
|
||||
using StringHold = active::serialise::CargoHold<active::serialise::ValueWrap<speckle::utility::String>, speckle::utility::String>;
|
||||
///Argument type for this method
|
||||
using SendArgs = speckle::interfac::browser::bridge::JSArgType<StringHold>;
|
||||
|
||||
/*!
|
||||
JS Function class to highlight elements from the selected model card in the open document
|
||||
*/
|
||||
class OpenUrl : public speckle::interfac::browser::bridge::BridgeMethod<SendArgs, void> {
|
||||
public:
|
||||
|
||||
// MARK: - Constructors
|
||||
|
||||
/*!
|
||||
Constructor
|
||||
*/
|
||||
OpenUrl();
|
||||
|
||||
// MARK: - Functions (const)
|
||||
|
||||
/*!
|
||||
Opens an url
|
||||
@param url The URL to open
|
||||
*/
|
||||
void run(const speckle::utility::String& url) const;
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
#endif //CONNECTOR_INTERFACE_BRIDGE_OPEN_URL
|
||||
Reference in New Issue
Block a user