diff --git a/Lgi.xml b/Lgi.xml --- a/Lgi.xml +++ b/Lgi.xml @@ -1,529 +1,597 @@ - - + + Makefile.linux Makefile.win64 Makefile.macosx + Makefile.unknown gcc 0 + + + + + ./include ./private/common ./include ./private/common ./include/lgi/linux ./include/lgi/linux/Gtk ./private/linux ./include/lgi/linux ./include/lgi/linux/Gtk ./private/linux - include/lgi/win - include/lgi/win + ./include/lgi/win +./private/win + ./include/lgi/win +./private/win + + ./include/lgi/haiku +./private/haiku + ./include/lgi/haiku +./private/haiku + /usr/include/libappindicator3-0.1 `pkg-config --cflags gtk+-3.0` `pkg-config --cflags gstreamer-1.0` /usr/include/libappindicator3-0.1 `pkg-config --cflags gtk+-3.0` `pkg-config --cflags gstreamer-1.0` + magic appindicator3 crypt -static-libgcc `pkg-config --libs gtk+-3.0` magic appindicator3 crypt -static-libgcc `pkg-config --libs gtk+-3.0` + + + -static-gcc +gnu +network +be + -static-gcc +gnu +network +be + lgi-gtk3 lgi-gtk3 + DynamicLibrary + + + LGI_LIBRARY + LGI_LIBRARY + + + POSIX +_GNU_SOURCE + POSIX +_GNU_SOURCE + + + + + + + - - + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/haiku/ClipBoard.cpp b/src/haiku/ClipBoard.cpp --- a/src/haiku/ClipBoard.cpp +++ b/src/haiku/ClipBoard.cpp @@ -1,169 +1,169 @@ // Clipboard Implementation #include "lgi/common/Lgi.h" #include "lgi/common/Variant.h" #include "lgi/common/ClipBoard.h" #include #define DEBUG_CLIPBOARD 0 #define LGI_CLIP_BINARY "lgi.binary" class LClipBoardPriv : public BClipboard { public: LString Txt; LAutoWString WTxt; LClipBoardPriv() : BClipboard(NULL) { } }; /////////////////////////////////////////////////////////////////////////////////////////////// LClipBoard::LClipBoard(LView *o) { d = new LClipBoardPriv; Owner = o; Open = false; } LClipBoard::~LClipBoard() { DeleteObj(d); } bool LClipBoard::Empty() { if (!d->Lock()) { LgiTrace("%s:%i - Can't lock BClipboard.\n", _FL); return false; } d->Clear(); d->Unlock(); return true; } bool LClipBoard::EnumFormats(::LArray &Formats) { return false; } bool LClipBoard::Html(const char *doc, bool AutoEmpty) { return false; } ::LString LClipBoard::Html() { return ::LString(); } bool LClipBoard::Text(const char *Str, bool AutoEmpty) { bool Status = false; if (AutoEmpty) { Empty(); } if (!d->Lock()) { LgiTrace("%s:%i - Can't lock BClipboard.\n", _FL); return false; } auto clip = d->Data(); clip->AddData("text/plain", B_MIME_TYPE, Str, strlen(Str)); - Status = be_clipboard->Commit() == B_OK; + Status = d->Commit() == B_OK; if (!Status) LgiTrace("%s:%i - Could not commit data to clipboard.\n", _FL); d->Unlock(); return Status; } char *LClipBoard::Text() { if (!d->Lock()) { LgiTrace("%s:%i - Can't lock BClipboard.\n", _FL); return NULL; } auto clip = d->Data(); const char *string = NULL; ssize_t stringLen = 0; clip->FindData("text/plain", B_MIME_TYPE, (const void **)&string, &stringLen); d->Txt.Set(string, stringLen); d->Unlock(); return d->Txt; } // Wide char versions for plain text bool LClipBoard::TextW(const char16 *Str, bool AutoEmpty) { LAutoString u(WideToUtf8(Str)); return Text(u, AutoEmpty); } char16 *LClipBoard::TextW() { auto u = Text(); d->WTxt.Reset(Utf8ToWide(u)); return d->WTxt; } bool LClipBoard::Bitmap(LSurface *pDC, bool AutoEmpty) { bool Status = false; return Status; } LAutoPtr LClipBoard::Bitmap() { LAutoPtr img; return img; } bool LClipBoard::Binary(FormatType Format, uchar *Ptr, ssize_t Len, bool AutoEmpty) { if (!Ptr || Len <= 0) return false; return false; } ::LString::Array LClipBoard::Files() { ::LString::Array a; return a; } bool LClipBoard::Files(::LString::Array &a, bool AutoEmpty) { return false; } struct ReceiveData { LAutoPtr *Ptr; ssize_t *Len; }; bool LClipBoard::Binary(FormatType Format, LAutoPtr &Ptr, ssize_t *Len) { return false; }