[BACK]Return to platform.h CVS log [TXT][DIR] Up to [contributed] / brogue-ce / src / platform

Annotation of brogue-ce/src/platform/platform.h, Revision 1.1

1.1     ! rubenllo    1: #include "Rogue.h"
        !             2:
        !             3: #define U_MIDDLE_DOT  0x00b7
        !             4: #define U_FOUR_DOTS  0x2237
        !             5: #define U_DIAMOND  0x25c7
        !             6: #define U_FLIPPED_V  0x22CF
        !             7: #define U_ARIES  0x2648
        !             8: #define U_ESZETT  0x00df
        !             9: #define U_ANKH  0x2640
        !            10: #define U_MUSIC_NOTE  0x266A
        !            11: #define U_CIRCLE  0x26AA
        !            12: #define U_LIGHTNING_BOLT  0x03DF
        !            13: #define U_FILLED_CIRCLE  0x25cf
        !            14: #define U_NEUTER  0x26b2
        !            15: #define U_U_ACUTE  0x00da
        !            16: #define U_CURRENCY 0x00A4
        !            17: #define U_UP_ARROW  0x2191
        !            18: #define U_DOWN_ARROW  0x2193
        !            19: #define U_LEFT_ARROW  0x2190
        !            20: #define U_RIGHT_ARROW  0x2192
        !            21: #define U_OMEGA  0x03A9
        !            22: #define U_CIRCLE_BARS  0x29F2
        !            23: #define U_FILLED_CIRCLE_BARS  0x29F3
        !            24:
        !            25: // #define U_UP_TRIANGLE  0x2206
        !            26: // #define U_DOWN_TRIANGLE  0x2207
        !            27: // #define U_THETA  0x03B8
        !            28: // #define U_LAMDA  0x03BB
        !            29: // #define U_KOPPA  0x03DE
        !            30: // #define U_LOZENGE  0x29EB
        !            31: // #define U_CROSS_PRODUCT  0x2A2F
        !            32:
        !            33: struct brogueConsole {
        !            34:     /*
        !            35:     The platform entrypoint, called by the main function. Should initialize
        !            36:     and then call rogueMain.
        !            37:     */
        !            38:     void (*gameLoop)();
        !            39:
        !            40:     /*
        !            41:     Pause the game, returning a boolean specifying whether an input event
        !            42:     is available for receiving with nextKeyOrMouseEvent.
        !            43:     */
        !            44:     boolean (*pauseForMilliseconds)(short milliseconds);
        !            45:
        !            46:     /*
        !            47:     Block until an event is available and then update returnEvent with
        !            48:     its details. textInput is true iff a text-entry box is active. See
        !            49:     sdl2-platform.c for the boilerplate for colorsDance.
        !            50:     */
        !            51:     void (*nextKeyOrMouseEvent)(rogueEvent *returnEvent, boolean textInput, boolean colorsDance);
        !            52:
        !            53:     /*
        !            54:     Draw a character at a location with a specific color.
        !            55:     */
        !            56:     void (*plotChar)(
        !            57:         enum displayGlyph inputChar,
        !            58:         short x, short y,
        !            59:         short foreRed, short foreGreen, short foreBlue,
        !            60:         short backRed, short backGreen, short backBlue
        !            61:     );
        !            62:
        !            63:     void (*remap)(const char *, const char *);
        !            64:
        !            65:     /*
        !            66:     Returns whether a keyboard modifier is active -- 0 for Shift, 1 for Ctrl.
        !            67:     */
        !            68:     boolean (*modifierHeld)(int modifier);
        !            69:
        !            70:     /*
        !            71:     Optional. Notifies the platform code of an event during the game - e.g. victory
        !            72:     */
        !            73:     void (*notifyEvent)(short eventId, int data1, int data2, const char *str1, const char *str2);
        !            74:
        !            75:     /*
        !            76:     Optional. Take a screenshot in current working directory
        !            77:     */
        !            78:     boolean (*takeScreenshot)();
        !            79:
        !            80:     /*
        !            81:     Optional. Enables or disables graphical tiles, returning the new state. This
        !            82:     is called when the user changes the option in-game. It is also called at the
        !            83:     very start of the program, even before .gameLoop, to set the initial value.
        !            84:     */
        !            85:     boolean (*setGraphicsEnabled)(boolean);
        !            86: };
        !            87:
        !            88: // defined in platform
        !            89: void loadKeymap();
        !            90: void dumpScores();
        !            91: unsigned int glyphToUnicode(enum displayGlyph glyph);
        !            92:
        !            93: #ifdef BROGUE_SDL
        !            94: extern struct brogueConsole sdlConsole;
        !            95: extern int windowWidth;
        !            96: extern int windowHeight;
        !            97: extern boolean fullScreen;
        !            98: extern boolean softwareRendering;
        !            99: #endif
        !           100:
        !           101: #ifdef BROGUE_CURSES
        !           102: extern struct brogueConsole cursesConsole;
        !           103: #endif
        !           104:
        !           105: #ifdef BROGUE_WEB
        !           106: extern struct brogueConsole webConsole;
        !           107: #endif
        !           108:
        !           109: extern struct brogueConsole currentConsole;
        !           110: extern boolean noMenu;
        !           111: extern char dataDirectory[];
        !           112:
        !           113: // defined in brogue
        !           114: extern playerCharacter rogue;
        !           115:

CVSweb