GUI-FreeRDP/freerdp/client/X11/cli/node_settings.h

68 lines
1.6 KiB
C
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/*
* node_settings.h
*
* Created on: 6 июл. 2022 г.
* Author: alexander
*/
#ifndef NODE_SETTINGS_H_
#define NODE_SETTINGS_H_
#include <stdbool.h>
#include "parameter.h"
#include "value.h"
typedef struct NodeValue
{
Value name;
bool set;
bool change;
char *current;
struct NodeValue *next;
} NodeValue;
typedef struct NodeParameter
{
Parameter name;
bool set;
bool change;
char *key;
NodeValue *value;
bool singleValue;
size_t countValue;
size_t countValueSet;
struct NodeParameter *dependence;
struct NodeParameter *conflict;
struct NodeParameter *next;
} NodeParameter;
typedef struct NodeHead
{
NodeParameter *parameter;
size_t countParameter;
size_t countParameterSet;
} NodeHead;
extern NodeHead settings;
NodeParameter* getParameter(Parameter name);
NodeValue* getValue(Value name);
void addParameterKey(Parameter name, char *key, bool set, bool singleValue, NodeParameter *dependence, NodeParameter *conflict);
void addParameterValue(Parameter pName, Value vName, char *current, bool set);
void freeSettings();
NodeValue *getSetNodeValue(NodeParameter *node);
char *getSetValueCurrent(Parameter name);
bool getSetParameter(Parameter name);
bool getSetValue(Parameter pName, Value vName);
int getCountValue(Parameter name);
void changeParameter(Parameter name);
void changeValue(Parameter pName, Value vName);
void saveChangeSettings();
void resetChangeSettings();
void setParameter(Parameter name, bool set);
void setParameterValue(Parameter pName, Value vName, char *current);
#endif /* SETTINGS_H_ */