Sha256: b2472f7ec12ce8796c44e40495e22d9211d39109592eccc46c2ee95380e0b4fc

Contents?: true

Size: 1.76 KB

Versions: 6

Compression:

Stored size: 1.76 KB

Contents

#include "stdafx.h"
#include "MenuItemSelector.h"

BOOL MenuItemExists(const HWND windowHandle, std::list<const char*>& menuItems);
void MenuSelectPath(const HWND windowHandle, char* errorInfo, const int errorInfoSize, std::list<const char*>& menuItems);

extern "C" {

	__declspec ( dllexport ) void Menu_SelectPath(const HWND windowHandle, char* errorInfo, const int errorInfoSize, const char* arg0, ...) {
		va_list arguments;
		va_start(arguments, arg0);			

		std::list<const char*> menuItems;

		const char* lastArgument = arg0;
		while( NULL != lastArgument ) {
			menuItems.push_back(lastArgument);
			lastArgument = va_arg(arguments, const char*);
		}
		va_end(arguments);

		MenuSelectPath(windowHandle, errorInfo, errorInfoSize, menuItems);
	}

	__declspec ( dllexport ) BOOL Menu_ItemExists(const HWND windowHandle, const char* arg0, ...) {
		va_list arguments;
		va_start(arguments, arg0);			

		std::list<const char*> menuItems;

		const char* lastArgument = arg0;
		while( NULL != lastArgument ) {
			menuItems.push_back(lastArgument);
			lastArgument = va_arg(arguments, const char*);
		}
		va_end(arguments);

		return MenuItemExists(windowHandle, menuItems);
	}
}

BOOL MenuItemExists(const HWND windowHandle, std::list<const char*>& menuItems)
{
	auto menuSelector = gcnew MenuItemSelector();
	return menuSelector->MenuItemExists(windowHandle, menuItems);
}

void MenuSelectPath(const HWND windowHandle, char* errorInfo, const int errorInfoSize, std::list<const char*>& menuItems)
{
	try {
		auto menuSelector = gcnew MenuItemSelector();
		menuSelector->SelectMenuPath(windowHandle, menuItems);
	} catch(Exception^ e) {
		if( errorInfo ) {
			StringHelper::CopyToUnmanagedString(e->ToString(), errorInfo, errorInfoSize);
		}
	}
}

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
rautomation-0.10.0 ext/UiaDll/UiaDll/MenuMethods.cpp
rautomation-0.9.4 ext/UiaDll/UiaDll/MenuMethods.cpp
rautomation-0.9.3 ext/UiaDll/UiaDll/MenuMethods.cpp
rautomation-0.9.2 ext/UiaDll/UiaDll/MenuMethods.cpp
rautomation-0.9.1 ext/UiaDll/UiaDll/MenuMethods.cpp
rautomation-0.9.0 ext/UiaDll/UiaDll/MenuMethods.cpp