qmlFrontend/flib.h
author unc0rr
Thu, 19 Nov 2015 23:32:28 +0300
branchqmlfrontend
changeset 11416 78d6b99ddcb0
parent 11415 05cf35103206
child 11418 091149424aa4
permissions -rw-r--r--
Can send chat messages now
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
10416
1c301054694d - Remove --port command
unc0rr
parents:
diff changeset
     1
#ifndef FLIB_H
1c301054694d - Remove --port command
unc0rr
parents:
diff changeset
     2
#define FLIB_H
1c301054694d - Remove --port command
unc0rr
parents:
diff changeset
     3
1c301054694d - Remove --port command
unc0rr
parents:
diff changeset
     4
#include <stdint.h>
1c301054694d - Remove --port command
unc0rr
parents:
diff changeset
     5
1c301054694d - Remove --port command
unc0rr
parents:
diff changeset
     6
#ifdef __cplusplus
1c301054694d - Remove --port command
unc0rr
parents:
diff changeset
     7
extern "C" {
1c301054694d - Remove --port command
unc0rr
parents:
diff changeset
     8
#endif
1c301054694d - Remove --port command
unc0rr
parents:
diff changeset
     9
10428
7c25297720f1 More refactoring: move PoC preview getting code into flib
unc0rr
parents: 10426
diff changeset
    10
enum MessageType {
7c25297720f1 More refactoring: move PoC preview getting code into flib
unc0rr
parents: 10426
diff changeset
    11
    MSG_PREVIEW
10444
47a6231f1fc1 Teams widget now allows to add and remove teams (basic implementation, no checks performed, no colors, no hedgehogs)
unc0rr
parents: 10440
diff changeset
    12
    , MSG_ADDPLAYINGTEAM
47a6231f1fc1 Teams widget now allows to add and remove teams (basic implementation, no checks performed, no colors, no hedgehogs)
unc0rr
parents: 10440
diff changeset
    13
    , MSG_REMOVEPLAYINGTEAM
47a6231f1fc1 Teams widget now allows to add and remove teams (basic implementation, no checks performed, no colors, no hedgehogs)
unc0rr
parents: 10440
diff changeset
    14
    , MSG_ADDTEAM
47a6231f1fc1 Teams widget now allows to add and remove teams (basic implementation, no checks performed, no colors, no hedgehogs)
unc0rr
parents: 10440
diff changeset
    15
    , MSG_REMOVETEAM
10452
03519fd9f98d Show team color in teams list widget, also allow to change it on mouse click
unc0rr
parents: 10450
diff changeset
    16
    , MSG_TEAMCOLOR
10951
89a7f617e091 - Move protocol handling events to main thread through qt's main loop
unc0rr
parents: 10896
diff changeset
    17
    , MSG_NETDATA
11415
05cf35103206 Lobby page with chat widget(readonly)
unc0rr
parents: 10951
diff changeset
    18
    , MSG_CONNECTED
05cf35103206 Lobby page with chat widget(readonly)
unc0rr
parents: 10951
diff changeset
    19
    , MSG_DISCONNECTED
05cf35103206 Lobby page with chat widget(readonly)
unc0rr
parents: 10951
diff changeset
    20
    , MSG_ADDLOBBYCLIENT
05cf35103206 Lobby page with chat widget(readonly)
unc0rr
parents: 10951
diff changeset
    21
    , MSG_REMOVELOBBYCLIENT
05cf35103206 Lobby page with chat widget(readonly)
unc0rr
parents: 10951
diff changeset
    22
    , MSG_LOBBYCHATLINE
10428
7c25297720f1 More refactoring: move PoC preview getting code into flib
unc0rr
parents: 10426
diff changeset
    23
};
7c25297720f1 More refactoring: move PoC preview getting code into flib
unc0rr
parents: 10426
diff changeset
    24
10416
1c301054694d - Remove --port command
unc0rr
parents:
diff changeset
    25
typedef union string255_
1c301054694d - Remove --port command
unc0rr
parents:
diff changeset
    26
    {
1c301054694d - Remove --port command
unc0rr
parents:
diff changeset
    27
        struct {
1c301054694d - Remove --port command
unc0rr
parents:
diff changeset
    28
            unsigned char s[256];
1c301054694d - Remove --port command
unc0rr
parents:
diff changeset
    29
        };
1c301054694d - Remove --port command
unc0rr
parents:
diff changeset
    30
        struct {
1c301054694d - Remove --port command
unc0rr
parents:
diff changeset
    31
            unsigned char len;
1c301054694d - Remove --port command
unc0rr
parents:
diff changeset
    32
            unsigned char str[255];
1c301054694d - Remove --port command
unc0rr
parents:
diff changeset
    33
        };
1c301054694d - Remove --port command
unc0rr
parents:
diff changeset
    34
    } string255;
1c301054694d - Remove --port command
unc0rr
parents:
diff changeset
    35
10418
091d2c0216c3 Move away from passing shortstrings into C code, now IPC works
unc0rr
parents: 10416
diff changeset
    36
typedef void RunEngine_t(int argc, const char ** argv);
10951
89a7f617e091 - Move protocol handling events to main thread through qt's main loop
unc0rr
parents: 10896
diff changeset
    37
typedef void registerUIMessagesCallback_t(void * context, void (*)(void * context, MessageType mt, const char * msg, uint32_t len));
10430
899a30018ede Getter and setter for seed
unc0rr
parents: 10428
diff changeset
    38
typedef void getPreview_t();
10432
b0abef0ee78c Quick Game PoC
unc0rr
parents: 10430
diff changeset
    39
typedef void runQuickGame_t();
10448
4cb727e029fa - Allow to delete teams from config
unc0rr
parents: 10444
diff changeset
    40
typedef void runLocalGame_t();
10450
bf9e30b4ef9b - Store index of color instead of its value
unc0rr
parents: 10448
diff changeset
    41
typedef void resetGameConfig_t();
10430
899a30018ede Getter and setter for seed
unc0rr
parents: 10428
diff changeset
    42
typedef void setSeed_t(const char * seed);
899a30018ede Getter and setter for seed
unc0rr
parents: 10428
diff changeset
    43
typedef char *getSeed_t();
10612
eb3c1a289a23 Script combobox.wiki
unc0rr
parents: 10517
diff changeset
    44
typedef void setTheme_t(const char * themeName);
eb3c1a289a23 Script combobox.wiki
unc0rr
parents: 10517
diff changeset
    45
typedef void setScript_t(const char * scriptName);
10819
57e21f7621b0 Send selected scheme config on engine initialization (WIP)
unc0rr
parents: 10616
diff changeset
    46
typedef void setScheme_t(const char * schemeName);
10888
a04e04aaf599 Ammo schemes list, almost works
unc0rr
parents: 10819
diff changeset
    47
typedef void setAmmo_t(const char * ammoName);
10424
4be6cd55f1cf - Get rid of engine's PathPrefix and UserPathPrefix
unc0rr
parents: 10420
diff changeset
    48
typedef void flibInit_t(const char * localPrefix, const char * userPrefix);
4be6cd55f1cf - Get rid of engine's PathPrefix and UserPathPrefix
unc0rr
parents: 10420
diff changeset
    49
typedef void flibFree_t();
10951
89a7f617e091 - Move protocol handling events to main thread through qt's main loop
unc0rr
parents: 10896
diff changeset
    50
typedef void passNetData_t(const char * data);
11416
78d6b99ddcb0 Can send chat messages now
unc0rr
parents: 11415
diff changeset
    51
typedef void sendChatLine_t(const char * msg);
10416
1c301054694d - Remove --port command
unc0rr
parents:
diff changeset
    52
10434
1614b13ad35e Themes model, also add some files I forgot to add previously
unc0rr
parents: 10432
diff changeset
    53
typedef char **getThemesList_t();
1614b13ad35e Themes model, also add some files I forgot to add previously
unc0rr
parents: 10432
diff changeset
    54
typedef void freeThemesList_t(char **list);
10436
084e046f6bd5 flib provides theme icons, qmlFrontend shows them
unc0rr
parents: 10434
diff changeset
    55
typedef uint32_t getThemeIcon_t(char * theme, char * buffer, uint32_t size);
10434
1614b13ad35e Themes model, also add some files I forgot to add previously
unc0rr
parents: 10432
diff changeset
    56
10517
844bd43db47a getScriptsList implementation
unc0rr
parents: 10456
diff changeset
    57
typedef char **getScriptsList_t();
10616
20a2d5e6930a Schemes list combobox with their names
unc0rr
parents: 10612
diff changeset
    58
typedef char **getSchemesList_t();
10888
a04e04aaf599 Ammo schemes list, almost works
unc0rr
parents: 10819
diff changeset
    59
typedef char **getAmmosList_t();
10517
844bd43db47a getScriptsList implementation
unc0rr
parents: 10456
diff changeset
    60
10440
b74a7bbe224e - Implement getTeamsList (not tested)
unc0rr
parents: 10436
diff changeset
    61
typedef char **getTeamsList_t();
10452
03519fd9f98d Show team color in teams list widget, also allow to change it on mouse click
unc0rr
parents: 10450
diff changeset
    62
typedef void tryAddTeam_t(const char * teamName);
03519fd9f98d Show team color in teams list widget, also allow to change it on mouse click
unc0rr
parents: 10450
diff changeset
    63
typedef void tryRemoveTeam_t(const char * teamName);
03519fd9f98d Show team color in teams list widget, also allow to change it on mouse click
unc0rr
parents: 10450
diff changeset
    64
typedef void changeTeamColor_t(const char * teamName, int32_t dir);
10440
b74a7bbe224e - Implement getTeamsList (not tested)
unc0rr
parents: 10436
diff changeset
    65
10896
5a74923120d5 Start network support: only setting up a connection for now
unc0rr
parents: 10888
diff changeset
    66
typedef void connectOfficialServer_t();
5a74923120d5 Start network support: only setting up a connection for now
unc0rr
parents: 10888
diff changeset
    67
10416
1c301054694d - Remove --port command
unc0rr
parents:
diff changeset
    68
#ifdef __cplusplus
1c301054694d - Remove --port command
unc0rr
parents:
diff changeset
    69
}
1c301054694d - Remove --port command
unc0rr
parents:
diff changeset
    70
#endif
1c301054694d - Remove --port command
unc0rr
parents:
diff changeset
    71
1c301054694d - Remove --port command
unc0rr
parents:
diff changeset
    72
#endif // FLIB_H