aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/linden/indra/llwindow/llwindow.h
diff options
context:
space:
mode:
authorJacek Antonelli2008-09-06 18:24:57 -0500
committerJacek Antonelli2008-09-06 18:25:07 -0500
commit798d367d54a6c6379ad355bd8345fa40e31e7fe9 (patch)
tree1921f1708cd0240648c97bc02df2c2ab5f2fc41e /linden/indra/llwindow/llwindow.h
parentSecond Life viewer sources 1.20.15 (diff)
downloadmeta-impy-798d367d54a6c6379ad355bd8345fa40e31e7fe9.zip
meta-impy-798d367d54a6c6379ad355bd8345fa40e31e7fe9.tar.gz
meta-impy-798d367d54a6c6379ad355bd8345fa40e31e7fe9.tar.bz2
meta-impy-798d367d54a6c6379ad355bd8345fa40e31e7fe9.tar.xz
Second Life viewer sources 1.21.0-RC
Diffstat (limited to '')
-rw-r--r--linden/indra/llwindow/llwindow.h31
1 files changed, 13 insertions, 18 deletions
diff --git a/linden/indra/llwindow/llwindow.h b/linden/indra/llwindow/llwindow.h
index a63c8d5..82e95a8 100644
--- a/linden/indra/llwindow/llwindow.h
+++ b/linden/indra/llwindow/llwindow.h
@@ -32,8 +32,6 @@
32#ifndef LL_LLWINDOW_H 32#ifndef LL_LLWINDOW_H
33#define LL_LLWINDOW_H 33#define LL_LLWINDOW_H
34 34
35#include <sys/stat.h>
36
37#include "llrect.h" 35#include "llrect.h"
38#include "llcoord.h" 36#include "llcoord.h"
39#include "llstring.h" 37#include "llstring.h"
@@ -197,10 +195,6 @@ public:
197 virtual void bringToFront() = 0; 195 virtual void bringToFront() = 0;
198 virtual void focusClient() { }; // this may not have meaning or be required on other platforms, therefore, it's not abstract 196 virtual void focusClient() { }; // this may not have meaning or be required on other platforms, therefore, it's not abstract
199 197
200 virtual S32 stat( const char* file_name, struct stat* stat_info ) = 0;
201 virtual BOOL sendEmail(const char* address,const char* subject,const char* body_text, const char* attachment=NULL, const char* attachment_displayed_name=NULL ) = 0;
202
203
204 // handy coordinate space conversion routines 198 // handy coordinate space conversion routines
205 // NB: screen to window and vice verse won't work on width/height coordinate pairs, 199 // NB: screen to window and vice verse won't work on width/height coordinate pairs,
206 // as the conversion must take into account left AND right border widths, etc. 200 // as the conversion must take into account left AND right border widths, etc.
@@ -225,14 +219,18 @@ public:
225// opens system default color picker 219// opens system default color picker
226 virtual BOOL dialog_color_picker (F32 *r, F32 *g, F32 *b) { return FALSE; }; 220 virtual BOOL dialog_color_picker (F32 *r, F32 *g, F32 *b) { return FALSE; };
227 221
228// return a platform-specific window reference (HWND on Windows, WindowRef on the Mac) 222// return a platform-specific window reference (HWND on Windows, WindowRef on the Mac, Gtk window on Linux)
229 virtual void *getPlatformWindow() = 0; 223 virtual void *getPlatformWindow() = 0;
224
225// return the platform-specific window reference we use to initialize llmozlib (HWND on Windows, WindowRef on the Mac, Gtk window on Linux)
226 virtual void *getMediaWindow();
230 227
231 // control platform's Language Text Input mechanisms. 228 // control platform's Language Text Input mechanisms.
232 virtual void allowLanguageTextInput(LLPreeditor *preeditor, BOOL b) {} 229 virtual void allowLanguageTextInput(LLPreeditor *preeditor, BOOL b) {}
233 virtual void setLanguageTextInput( const LLCoordGL & pos ) {}; 230 virtual void setLanguageTextInput( const LLCoordGL & pos ) {};
234 virtual void updateLanguageTextInputArea() {} 231 virtual void updateLanguageTextInputArea() {}
235 virtual void interruptLanguageTextInput() {} 232 virtual void interruptLanguageTextInput() {}
233 virtual void spawnWebBrowser(const std::string& escaped_url) {};
236 234
237 static std::string getFontListSans(); 235 static std::string getFontListSans();
238 236
@@ -293,13 +291,13 @@ public:
293 static LLSplashScreen * create(); 291 static LLSplashScreen * create();
294 static void show(); 292 static void show();
295 static void hide(); 293 static void hide();
296 static void update(const char* string); 294 static void update(const std::string& string);
297 295
298 static bool isVisible(); 296 static bool isVisible();
299protected: 297protected:
300 // These are overridden by the platform implementation 298 // These are overridden by the platform implementation
301 virtual void showImpl() = 0; 299 virtual void showImpl() = 0;
302 virtual void updateImpl(const char* string) = 0; 300 virtual void updateImpl(const std::string& string) = 0;
303 virtual void hideImpl() = 0; 301 virtual void hideImpl() = 0;
304 302
305 static BOOL sVisible; 303 static BOOL sVisible;
@@ -307,7 +305,7 @@ protected:
307}; 305};
308 306
309// Platform-neutral for accessing the platform specific message box 307// Platform-neutral for accessing the platform specific message box
310S32 OSMessageBox(const char* text, const char* caption, U32 type); 308S32 OSMessageBox(const std::string& text, const std::string& caption, U32 type);
311const U32 OSMB_OK = 0; 309const U32 OSMB_OK = 0;
312const U32 OSMB_OKCANCEL = 1; 310const U32 OSMB_OKCANCEL = 1;
313const U32 OSMB_YESNO = 2; 311const U32 OSMB_YESNO = 2;
@@ -325,8 +323,8 @@ class LLWindowManager
325{ 323{
326public: 324public:
327 static LLWindow* createWindow( 325 static LLWindow* createWindow(
328 char *title, 326 const std::string& title,
329 char *name, 327 const std::string& name,
330 LLCoordScreen upper_left = LLCoordScreen(10, 10), 328 LLCoordScreen upper_left = LLCoordScreen(10, 10),
331 LLCoordScreen size = LLCoordScreen(320, 240), 329 LLCoordScreen size = LLCoordScreen(320, 240),
332 U32 flags = 0, 330 U32 flags = 0,
@@ -336,7 +334,7 @@ public:
336 BOOL use_gl = TRUE, 334 BOOL use_gl = TRUE,
337 BOOL ignore_pixel_depth = FALSE); 335 BOOL ignore_pixel_depth = FALSE);
338 static LLWindow *createWindow( 336 static LLWindow *createWindow(
339 char* title, char* name, S32 x, S32 y, S32 width, S32 height, 337 const std::string& title, const std::string& name, S32 x, S32 y, S32 width, S32 height,
340 U32 flags = 0, 338 U32 flags = 0,
341 BOOL fullscreen = FALSE, 339 BOOL fullscreen = FALSE,
342 BOOL clearBg = FALSE, 340 BOOL clearBg = FALSE,
@@ -355,11 +353,8 @@ extern BOOL gDebugWindowProc;
355 353
356// Protocols, like "http" and "https" we support in URLs 354// Protocols, like "http" and "https" we support in URLs
357extern const S32 gURLProtocolWhitelistCount; 355extern const S32 gURLProtocolWhitelistCount;
358extern const char* gURLProtocolWhitelist[]; 356extern const std::string gURLProtocolWhitelist[];
359extern const char* gURLProtocolWhitelistHandler[]; 357extern const std::string gURLProtocolWhitelistHandler[];
360
361// Loads a URL with the user's default browser
362void spawn_web_browser(const char* escaped_url);
363 358
364void simpleEscapeString ( std::string& stringIn ); 359void simpleEscapeString ( std::string& stringIn );
365 360