tasklist_positions.h
1 #pragma once 2 #include <vector> 3 #include <unordered_set> 4 #include <string> 5 #include <Windows.h> 6 #include <UIAutomationClient.h> 7 8 struct TasklistButton 9 { 10 std::wstring name; 11 long x{}; 12 long y{}; 13 long width{}; 14 long height{}; 15 long keynum{}; 16 }; 17 18 class Tasklist 19 { 20 public: 21 void update(); 22 std::vector<TasklistButton> get_buttons(); 23 bool update_buttons(std::vector<TasklistButton>& buttons); 24 25 private: 26 winrt::com_ptr<IUIAutomation> automation; 27 winrt::com_ptr<IUIAutomationElement> element; 28 winrt::com_ptr<IUIAutomationCondition> true_condition; 29 };