17#ifndef LIEF_PE_RESOURCE_DIALOG_ITEM_H
18#define LIEF_PE_RESOURCE_DIALOG_ITEM_H
23#include "LIEF/visibility.h"
25#include "LIEF/Object.hpp"
27#include "LIEF/PE/enums.hpp"
31class ResourcesManager;
32struct ResourcesParser;
35struct pe_dialog_item_template_ext;
36struct pe_dialog_item_template;
43 friend struct ResourcesParser;
71 std::set<WINDOW_STYLES> style_list()
const;
99 const std::u16string&
title()
const;
101 void accept(
Visitor& visitor)
const override;
104 LIEF_API
friend std::ostream& operator<<(std::ostream& os,
const ResourceDialogItem& dialog_item);
107 bool is_extended_ =
true;
108 uint32_t help_id_ = 0;
109 uint32_t ext_style_ = 0;
118 std::u16string window_class_;
119 std::u16string title_;
121 uint16_t extra_count_ = 0;
This class represents an item in the ResourceDialog.
Definition ResourceDialogItem.hpp:40
uint32_t id() const
The control identifier.
std::set< EXTENDED_WINDOW_STYLES > extended_style_list() const
List of PE::EXTENDED_WINDOW_STYLES associated with the ResourceDialogItem::extended_style value.
int16_t cy() const
The height, in dialog box units, of the control.
int16_t y() const
The y-coordinate, in dialog box units, of the upper-left corner of the control. This coordinate is al...
bool is_extended() const
True if the control is an extended one
uint32_t style() const
The style of the control.
int16_t cx() const
The width, in dialog box units, of the control.
int16_t x() const
The x-coordinate, in dialog box units, of the upper-left corner of the control. This coordinate is al...
uint32_t extended_style() const
The extended styles for a window.
const std::u16string & title() const
Initial text of the control.
uint32_t help_id() const
The help context identifier for the control.
bool has_extended_style(EXTENDED_WINDOW_STYLES style) const
Check if the DialogItem has the given PE::EXTENDED_WINDOW_STYLES.
The Resource Manager provides an enhanced API to manipulate the resource tree.
Definition ResourcesManager.hpp:38
Definition Visitor.hpp:219
EXTENDED_WINDOW_STYLES
From https://docs.microsoft.com/en-us/windows/win32/winmsg/extended-window-styles.
Definition PE/enums.hpp:204
WINDOW_STYLES
From: https://docs.microsoft.com/en-us/windows/win32/winmsg/window-styles.
Definition PE/enums.hpp:229
LIEF namespace.
Definition Abstract/Binary.hpp:32