· KLDP.org · KLDP.net · KLDP Wiki · KLDP BBS ·
Cedet Wx Widgets

CEDET wxWidgets ÀÚµ¿¿Ï¼º

emacs¿¡¼­ CEDET(semantic)·Î wxWidgets ¶óÀ̺귯¸® ÀÚµ¿¿Ï¼ºÇÏ´Â ¹æ¹ýÀº ¾Æ·¡ »çÀÌÆ®¿¡ ³ª¿ÍÀÖÁö¸¸
http://www.emacswiki.org/emacs/SemanticLibraryParsing#toc2

"/usr/include/wx-2.8/wx" ÇÏÀ§ µð·ºÅ丮¿¡ Àִ Ŭ·¡½º,
¿¹¸¦ µé¾î wxStaticTextBaseó·³ µÚ¿¡ Base°¡ ºÙÀº Ŭ·¡½º´Â ÀÚµ¿¿Ï¼ºÀÌ ¾ÈµË´Ï´Ù.

±×·¡¼­ À̸® Àú¸® ½ÇÇèÇغ» °á°ú¸¦ ³²°ÜµÓ´Ï´Ù.
(ÀÌÀü wxWidgets °ü·Ã emacs ¼³Á¤ ¹× ÀÌÀü ij½Ã(semanticdb.cache Æú´õ) »èÁ¦Çϼ¼¿ä!!!)

ÀÏ´Ü wxWidgets Çì´õ ÆÄÀϵéÀÇ "#if wxUSE_XXXXX ... #endif" ºÎºÐÀ» ¹«·ÂÈ­ ½ÃÅ°±â À§ÇØ ¾Æ·¡ ¸í·É¾î·Î ÆÄÀÏÀ» Çϳª ¸¸µç ´ÙÀ½
$ find /usr/include/wx-2.8/wx -type f -print0 | xargs -0 -e grep -nH -e wxUSE > wxUSE.orig
Àû´çÈ÷ °¡°øÇؼ­
$ cat wxUSE.orig | sed -e 's/.*\(wxUSE_[[:alpha:]]\+\).*/#define \1/' | grep -e '^#define' | sort -u > wxUSE.h
¾Æ·¡ ÆÄÀÏÀ» ¸¸µì´Ï´Ù. (±ÍÂúÀ¸½Å ºÐÀº ¾Æ·¡ copy&pasteÇؼ­ ¸¸µå¼¼¿ä.)
wxUSE.h
#define wxUSE_ABI
#define wxUSE_ABOUTDLG
#define wxUSE_ACCEL
#define wxUSE_ACCESSIBILITY
#define wxUSE_ANIMATIONCTRL
#define wxUSE_APPLE
#define wxUSE_ARCHIVE
#define wxUSE_ARRAY
#define wxUSE_AUI
#define wxUSE_BASE
#define wxUSE_BITMAP
#define wxUSE_BITMAPCOMBOBOX
#define wxUSE_BMPBUTTON
#define wxUSE_BOOKCTRL
#define wxUSE_BORDER
#define wxUSE_BUILTIN
#define wxUSE_BUSYINFO
#define wxUSE_BUTTON
#define wxUSE_CALENDARCTRL
#define wxUSE_CARET
#define wxUSE_CHECKBOX
#define wxUSE_CHECKLISTBOX
#define wxUSE_CHOICE
#define wxUSE_CHOICEBOOK
#define wxUSE_CHOICEDLG
#define wxUSE_CLIPBOARD
#define wxUSE_CMDLINE
#define wxUSE_COLLPANE
#define wxUSE_COLOURDLG
#define wxUSE_COLOURPICKERCTRL
#define wxUSE_COMBOBOX
#define wxUSE_COMBOCTRL
#define wxUSE_CONFIG
#define wxUSE_CONSTRAINTS
#define wxUSE_CONTROLS
#define wxUSE_CRASHREPORT
#define wxUSE_DATAOBJ
#define wxUSE_DATAVIEWCTRL
#define wxUSE_DATEPICKCTRL
#define wxUSE_DATETIME
#define wxUSE_DDE
#define wxUSE_DEBUG
#define wxUSE_DEPRECATED
#define wxUSE_DIALUP
#define wxUSE_DIRDLG
#define wxUSE_DIRPICKERCTRL
#define wxUSE_DISPLAY
#define wxUSE_DOC
#define wxUSE_DRAG
#define wxUSE_DRAGIMAGE
#define wxUSE_DYNAMIC
#define wxUSE_DYNLIB
#define wxUSE_ENH
#define wxUSE_EXCEPTIONS
#define wxUSE_EXTENDED
#define wxUSE_FFILE
#define wxUSE_FILE
#define wxUSE_FILECONFIG
#define wxUSE_FILEDLG
#define wxUSE_FILEPICKERCTRL
#define wxUSE_FILESYSTEM
#define wxUSE_FINDREPLDLG
#define wxUSE_FONTDLG
#define wxUSE_FONTMAP
#define wxUSE_FONTPICKERCTRL
#define wxUSE_FS
#define wxUSE_FSVOLUME
#define wxUSE_FUNC
#define wxUSE_GAUGE
#define wxUSE_GENERIC
#define wxUSE_GENERICDATAVIEWCTRL
#define wxUSE_GEOMETRY
#define wxUSE_GIF
#define wxUSE_GLCANVAS
#define wxUSE_GLOBAL
#define wxUSE_GRAPHICS
#define wxUSE_GRID
#define wxUSE_GUI
#define wxUSE_HELP
#define wxUSE_HOTKEY
#define wxUSE_HTML
#define wxUSE_HYPERLINKCTRL
#define wxUSE_ICO
#define wxUSE_IDLEMENUUPDATES
#define wxUSE_IFF
#define wxUSE_IMAGE
#define wxUSE_IMAGLIST
#define wxUSE_INTL
#define wxUSE_IOSTREAMH
#define wxUSE_IPC
#define wxUSE_IPV
#define wxUSE_JOYSTICK
#define wxUSE_LIBGNOMEPRINT
#define wxUSE_LIBGNOMEVFS
#define wxUSE_LIBJPEG
#define wxUSE_LIBMSPACK
#define wxUSE_LIBPNG
#define wxUSE_LIBTIFF
#define wxUSE_LISTBOOK
#define wxUSE_LISTBOX
#define wxUSE_LISTCTRL
#define wxUSE_LOG
#define wxUSE_LOGGUI
#define wxUSE_LOGWINDOW
#define wxUSE_LONGLONG
#define wxUSE_MDI
#define wxUSE_MEDIACTRL
#define wxUSE_MEMBER
#define wxUSE_MEMORY
#define wxUSE_MENUS
#define wxUSE_METAFILE
#define wxUSE_MFC
#define wxUSE_MIMETYPE
#define wxUSE_MINIFRAME
#define wxUSE_MOUSEWHEEL
#define wxUSE_MS
#define wxUSE_MSGDLG
#define wxUSE_NATIVE
#define wxUSE_NESTED
#define wxUSE_NO
#define wxUSE_NORLANDER
#define wxUSE_NOTEBOOK
#define wxUSE_NUMBERDLG
#define wxUSE_ODBC
#define wxUSE_ODCOMBOBOX
#define wxUSE_OLD
#define wxUSE_OLE
#define wxUSE_ON
#define wxUSE_OWNER
#define wxUSE_PALETTE
#define wxUSE_PANGO
#define wxUSE_PCX
#define wxUSE_PLUGINS
#define wxUSE_PNM
#define wxUSE_POPUPWIN
#define wxUSE_POSTSCRIPT
#define wxUSE_PRINTF
#define wxUSE_PRINTING
#define wxUSE_PROGRESSDLG
#define wxUSE_PROLOGIO
#define wxUSE_PROTOCOL
#define wxUSE_QUERY
#define wxUSE_RADIOBOX
#define wxUSE_RADIOBTN
#define wxUSE_REGEX
#define wxUSE_RESOURCES
#define wxUSE_RICHTEXT
#define wxUSE_SASH
#define wxUSE_SCROLLBAR
#define wxUSE_SEARCHCTRL
#define wxUSE_SLIDER
#define wxUSE_SNGLINST
#define wxUSE_SOCKETS
#define wxUSE_SOUND
#define wxUSE_SPINBTN
#define wxUSE_SPINCTRL
#define wxUSE_SPLASH
#define wxUSE_SPLINES
#define wxUSE_SPLITTER
#define wxUSE_STACKWALKER
#define wxUSE_STARTUP
#define wxUSE_STATBMP
#define wxUSE_STATBOX
#define wxUSE_STATLINE
#define wxUSE_STATTEXT
#define wxUSE_STATUSBAR
#define wxUSE_STD
#define wxUSE_STDPATHS
#define wxUSE_STL
#define wxUSE_STOPWATCH
#define wxUSE_STREAM
#define wxUSE_STREAMS
#define wxUSE_SYSTEM
#define wxUSE_TAB
#define wxUSE_TARSTREAM
#define wxUSE_TEXTBUFFER
#define wxUSE_TEXTCTRL
#define wxUSE_TEXTDLG
#define wxUSE_TEXTFILE
#define wxUSE_TGA
#define wxUSE_THREADS
#define wxUSE_TIMER
#define wxUSE_TIPWINDOW
#define wxUSE_TOGGLEBTN
#define wxUSE_TOOLBAR
#define wxUSE_TOOLBOOK
#define wxUSE_TOOLTIPS
#define wxUSE_TREEBOOK
#define wxUSE_TREECTRL
#define wxUSE_UNICODE
#define wxUSE_URL
#define wxUSE_VALIDATORS
#define wxUSE_VARIANT
#define wxUSE_WCHAR
#define wxUSE_WEBKIT
#define wxUSE_WIN
#define wxUSE_WIZARDDLG
#define wxUSE_WX
#define wxUSE_WXDIB
#define wxUSE_WXHTML
#define wxUSE_WXVSNPRINTF
#define wxUSE_XML
#define wxUSE_XPM
#define wxUSE_XRC
#define wxUSE_XXX
#define wxUSE_ZIPSTREAM
#define wxUSE_ZLIB
±×·± ´ÙÀ½ ¾Æ·¡Ã³·³ ¼³Á¤ÇØ ÁÝ´Ï´Ù.
.emacs ÆÄÀÏ
(add-to-list 'semantic-lex-c-preprocessor-symbol-map '("WXDLLIMPEXP_CORE" . ""))
(add-to-list 'semantic-lex-c-preprocessor-symbol-map '("WXDLLIMPEXP_FWD_CORE" . ""))
(add-to-list 'semantic-lex-c-preprocessor-symbol-map '("WXDLLIMPEXP_BASE" . ""))
(add-to-list 'semantic-lex-c-preprocessor-symbol-map '("WXDLLIMPEXP_FWD_BASE" . ""))
(add-to-list 'semantic-lex-c-preprocessor-symbol-map '("WXDLLIMPEXP_FWD_XML" . ""))
(add-to-list 'semantic-lex-c-preprocessor-symbol-map '("WXDLLIMPEXP_ADV" . ""))

(require 'hideif)
(setq hif-ifx-regexp (concat hif-cpp-prefix "\\(el\\)?if\\(n?def\\)?[ \t]+"))

(add-to-list 'semantic-lex-c-preprocessor-symbol-file "~/¼³Ä¡/°æ·Î/wxUSE.h")
(add-to-list 'semantic-lex-c-preprocessor-symbol-map '("__WXGTK20__" . "__cplusplus"))
(semantic-add-system-include "/usr/include/wx-2.8" 'c++-mode)
Âü°íÀûÀ¸·Î hif-ifx-regexp º¯¼ö¸¦ °íÄ£ °ÍÀº "#elif defined( ... )"¸¦ Á¦´ë·Î ÆĽÌÇϱâ À§ÇÑ °ÍÀÌ°í
(add-to-list 'semantic-lex-c-preprocessor-symbol-map '("__WXGTK20__" . "__cplusplus"))
ÀÌ ºÎºÐÀÌ ÇÊ¿äÇÑ ÀÌÀ¯´Â, ¿¹¸¦ µé¾î
"/usr/include/wx-2.8/wx/stattext.h"¸¦ º¸¸é
#if defined(__WXUNIVERSAL__)
    #include "wx/univ/stattext.h"
#elif defined(__WXMSW__)
    #include "wx/msw/stattext.h"
#elif defined(__WXMOTIF__)
    #include "wx/motif/stattext.h"
#elif defined(__WXGTK20__)
    #include "wx/gtk/stattext.h"
#elif defined(__WXGTK__)
    #include "wx/gtk1/stattext.h"
#elif defined(__WXMAC__)
    #include "wx/mac/stattext.h"
#elif defined(__WXCOCOA__)
    #include "wx/cocoa/stattext.h"
#elif defined(__WXPM__)
    #include "wx/os2/stattext.h"
#elif defined(__WXPALMOS__)
    #include "wx/palmos/stattext.h"
#endif
ÀÌ·± ºÎºÐÀÌ Àִµ¥ "#elif defined(__WXGTK20__)" ºÎºÐÀ» true·Î ¸¸µé¾î ÁÖ±â À§ÇÑ °ÍÀÔ´Ï´Ù.
MSÀ©µµ¿ì¿¡¼­ ¶ó¸é ¾Æ·¡ ó·³ º¯°æÇØ¾ß ÇÒµí...(Å×½ºÆ® ÇÊ¿ä)
(add-to-list 'semantic-lex-c-preprocessor-symbol-map '("__WXMSW__" . "__cplusplus"))
¸¶Áö¸·À¸·Î Å×½ºÆ®ÇØ º¾´Ï´Ù.
wxStaticTextBase.cc
#include <wx/wx.h>

int main(int argc, char *argv[])
{
	wxStaticTextBase b;
	b.Get

	return 0;
}
wxStaticTextBase.png
wxStaticTextBase.png
[PNG image (58.04 KB)]
wxStaticText.cc
#include <wx/wx.h>

int main(int argc, char *argv[])
{
	wxStaticText w;
	w.Get

	return 0;
}
wxStaticText.png
wxStaticText.png
[PNG image (62.18 KB)]


(!) primewizard - 20101125

ID
Password
Join
You are tricky, but never to the point of dishonesty.


sponsored by andamiro
sponsored by cdnetworks
sponsored by HP

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2010-11-25 09:40:22
Processing time 0.0056 sec