mirror of
https://github.com/fltk/fltk.git
synced 2026-06-02 15:46:52 +08:00
Avoid multiple definition of macro __fl_attr()
This could happen if both FL/fl_ask.H and fluid/Fl_Type.h were included in the same file.
This commit is contained in:
+1
-8
@@ -22,6 +22,7 @@
|
|||||||
# define fl_ask_H
|
# define fl_ask_H
|
||||||
|
|
||||||
# include "Enumerations.H"
|
# include "Enumerations.H"
|
||||||
|
# include "fl_attr.h"
|
||||||
class Fl_Widget;
|
class Fl_Widget;
|
||||||
|
|
||||||
/** Different system beeps available.
|
/** Different system beeps available.
|
||||||
@@ -35,14 +36,6 @@ enum Fl_Beep {
|
|||||||
FL_BEEP_NOTIFICATION ///< Notification beep.
|
FL_BEEP_NOTIFICATION ///< Notification beep.
|
||||||
};
|
};
|
||||||
|
|
||||||
# ifdef __GNUC__
|
|
||||||
/* the GNUC-specific attribute appearing below in prototypes with a variable list of arguments
|
|
||||||
helps detection of mismatches between format string and argument list at compilation time */
|
|
||||||
# define __fl_attr(x) __attribute__ (x)
|
|
||||||
# else
|
|
||||||
# define __fl_attr(x)
|
|
||||||
# endif // __GNUC__
|
|
||||||
|
|
||||||
FL_EXPORT void fl_beep(int type = FL_BEEP_DEFAULT);
|
FL_EXPORT void fl_beep(int type = FL_BEEP_DEFAULT);
|
||||||
FL_EXPORT void fl_message(const char *,...) __fl_attr((__format__ (__printf__, 1, 2)));
|
FL_EXPORT void fl_message(const char *,...) __fl_attr((__format__ (__printf__, 1, 2)));
|
||||||
FL_EXPORT void fl_alert(const char *,...) __fl_attr((__format__ (__printf__, 1, 2)));
|
FL_EXPORT void fl_alert(const char *,...) __fl_attr((__format__ (__printf__, 1, 2)));
|
||||||
|
|||||||
@@ -0,0 +1,34 @@
|
|||||||
|
/*
|
||||||
|
* Function attribute declarations for the Fast Light Tool Kit (FLTK).
|
||||||
|
*
|
||||||
|
* Copyright 1998-2021 by Bill Spitzak and others.
|
||||||
|
*
|
||||||
|
* This library is free software. Distribution and use rights are outlined in
|
||||||
|
* the file "COPYING" which should have been included with this file. If this
|
||||||
|
* file is missing or damaged, see the license at:
|
||||||
|
*
|
||||||
|
* https://www.fltk.org/COPYING.php
|
||||||
|
*
|
||||||
|
* Please see the following page on how to report bugs and issues:
|
||||||
|
*
|
||||||
|
* https://www.fltk.org/bugs.php
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef _FL_fl_attr_h_
|
||||||
|
#define _FL_fl_attr_h_
|
||||||
|
|
||||||
|
/*
|
||||||
|
The GNUC-specific attribute appearing below in prototypes with a variable
|
||||||
|
list of arguments helps detection of mismatches between format string and
|
||||||
|
argument list at compilation time.
|
||||||
|
|
||||||
|
Examples: see fl_ask.H
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifdef __GNUC__
|
||||||
|
# define __fl_attr(x) __attribute__ (x)
|
||||||
|
#else
|
||||||
|
# define __fl_attr(x)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif /* !_FL_fl_attr_h_ */
|
||||||
+12
-16
@@ -1,16 +1,7 @@
|
|||||||
//
|
//
|
||||||
// Widget type header file for the Fast Light Tool Kit (FLTK).
|
// Widget type header file for the Fast Light Tool Kit (FLTK).
|
||||||
//
|
//
|
||||||
// Each object described by Fluid is one of these objects. They
|
// Copyright 1998-2021 by Bill Spitzak and others.
|
||||||
// are all stored in a double-linked list.
|
|
||||||
//
|
|
||||||
// There is also a single "factory" instance of each type of this.
|
|
||||||
// The method "make()" is called on this factory to create a new
|
|
||||||
// instance of this object. It could also have a "copy()" function,
|
|
||||||
// but it was easier to implement this by using the file read/write
|
|
||||||
// that is needed to save the setup anyways.
|
|
||||||
//
|
|
||||||
// Copyright 1998-2016 by Bill Spitzak and others.
|
|
||||||
//
|
//
|
||||||
// This library is free software. Distribution and use rights are outlined in
|
// This library is free software. Distribution and use rights are outlined in
|
||||||
// the file "COPYING" which should have been included with this file. If this
|
// the file "COPYING" which should have been included with this file. If this
|
||||||
@@ -23,11 +14,22 @@
|
|||||||
// https://www.fltk.org/bugs.php
|
// https://www.fltk.org/bugs.php
|
||||||
//
|
//
|
||||||
|
|
||||||
|
// Each object described by Fluid is one of these objects. They
|
||||||
|
// are all stored in a double-linked list.
|
||||||
|
//
|
||||||
|
// There is also a single "factory" instance of each type of this.
|
||||||
|
// The method "make()" is called on this factory to create a new
|
||||||
|
// instance of this object. It could also have a "copy()" function,
|
||||||
|
// but it was easier to implement this by using the file read/write
|
||||||
|
// that is needed to save the setup anyways.
|
||||||
|
|
||||||
#include <FL/Fl_Widget.H>
|
#include <FL/Fl_Widget.H>
|
||||||
#include <FL/Fl_Menu.H>
|
#include <FL/Fl_Menu.H>
|
||||||
#include <FL/Fl_Plugin.H>
|
#include <FL/Fl_Plugin.H>
|
||||||
#include "Fluid_Image.h"
|
#include "Fluid_Image.h"
|
||||||
#include <FL/fl_draw.H>
|
#include <FL/fl_draw.H>
|
||||||
|
#include <FL/fl_attr.h>
|
||||||
|
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
|
|
||||||
@@ -859,12 +861,6 @@ void reveal_in_browser(Fl_Type*);
|
|||||||
int has_toplevel_function(const char *rtype, const char *sig);
|
int has_toplevel_function(const char *rtype, const char *sig);
|
||||||
|
|
||||||
// file operations:
|
// file operations:
|
||||||
# ifdef __GNUC__
|
|
||||||
# define __fl_attr(x) __attribute__ (x)
|
|
||||||
# else
|
|
||||||
# define __fl_attr(x)
|
|
||||||
# endif // __GNUC__
|
|
||||||
|
|
||||||
void write_word(const char *);
|
void write_word(const char *);
|
||||||
void write_string(const char *,...) __fl_attr((__format__ (__printf__, 1, 2)));
|
void write_string(const char *,...) __fl_attr((__format__ (__printf__, 1, 2)));
|
||||||
int write_file(const char *, int selected_only = 0);
|
int write_file(const char *, int selected_only = 0);
|
||||||
|
|||||||
Reference in New Issue
Block a user