Mon, 23 Feb 2004 21:18:27 +0000
[gaim-migrate @ 9041]
Because I won't be able to work on this until late this week at the earliest,
here's GtkIMHtmlToolbar. It's a composite widget that attaches to an editable
gtkimhtml and controls all the formatting with ease. All one has to do to get
a formattable, editable, gtkimhtml now is to replace a gtktextview with a
gtkimhtml (you can even leave all the other calls that control it as gtkimhtml
descends from gtktextview) throw one of these toolbars in there and
gtk_imhtml_toolbar_attach it to the gtkimhtml. That's what I did in the New
Away Message dialog. This would also be nice in gtkrequest.c and gtkpounce.c.
Of course, this isn't done and there's a ton of hacky commented out old code in
there. Things like keyboard shortcut preferences don't currently work and
there's a lot of things I want to move around yet. However, if anyone feels
inspired to work on it before I get back to it feel free. Maybe you can IM me
beforehand or something.
| 3630 | 1 | Notes on keeping GAIM OS independant |
| 2 | ------------------------------------ | |
| 3 | ||
| 4 | General | |
| 5 | ------- | |
| 6 | - Use G_DIR_SEPARATOR_S and G_DIR_SEPARATOR for paths | |
| 7 | ||
| 8 | - Use g_getenv, g_snprintf, g_vsnprintf | |
| 9 | ||
| 10 | - Use gaim_home_dir instead of g_get_home_dir or g_getenv("HOME") | |
| 11 | ||
|
3713
c5e268f28597
[gaim-migrate @ 3846]
Herman Bloggs <herman@bluedigits.com>
parents:
3630
diff
changeset
|
12 | - Make sure when including win32dep.h that it is the last header to |
|
c5e268f28597
[gaim-migrate @ 3846]
Herman Bloggs <herman@bluedigits.com>
parents:
3630
diff
changeset
|
13 | be included. |
| 3630 | 14 | |
|
4482
6181b7a53a07
[gaim-migrate @ 4757]
Herman Bloggs <herman@bluedigits.com>
parents:
4062
diff
changeset
|
15 | - Open binary files when reading or writing with 'b' mode. |
|
6181b7a53a07
[gaim-migrate @ 4757]
Herman Bloggs <herman@bluedigits.com>
parents:
4062
diff
changeset
|
16 | |
|
6181b7a53a07
[gaim-migrate @ 4757]
Herman Bloggs <herman@bluedigits.com>
parents:
4062
diff
changeset
|
17 | e.g: fopen("somefile", "wb"); |
|
6181b7a53a07
[gaim-migrate @ 4757]
Herman Bloggs <herman@bluedigits.com>
parents:
4062
diff
changeset
|
18 | |
|
6181b7a53a07
[gaim-migrate @ 4757]
Herman Bloggs <herman@bluedigits.com>
parents:
4062
diff
changeset
|
19 | Not doing so will open files in windows using defaut translation mode. |
|
6181b7a53a07
[gaim-migrate @ 4757]
Herman Bloggs <herman@bluedigits.com>
parents:
4062
diff
changeset
|
20 | i.e. newline -> <CR><LF> |
|
6181b7a53a07
[gaim-migrate @ 4757]
Herman Bloggs <herman@bluedigits.com>
parents:
4062
diff
changeset
|
21 | |
|
4062
b397c19fe466
[gaim-migrate @ 4272]
Herman Bloggs <herman@bluedigits.com>
parents:
3713
diff
changeset
|
22 | Paths |
|
b397c19fe466
[gaim-migrate @ 4272]
Herman Bloggs <herman@bluedigits.com>
parents:
3713
diff
changeset
|
23 | ----- |
|
b397c19fe466
[gaim-migrate @ 4272]
Herman Bloggs <herman@bluedigits.com>
parents:
3713
diff
changeset
|
24 | |
|
b397c19fe466
[gaim-migrate @ 4272]
Herman Bloggs <herman@bluedigits.com>
parents:
3713
diff
changeset
|
25 | - DATADIR, LOCALEDIR & LIBDIR are defined in wingaim as functions. |
|
b397c19fe466
[gaim-migrate @ 4272]
Herman Bloggs <herman@bluedigits.com>
parents:
3713
diff
changeset
|
26 | Doing the following will therefore break the windows build: |
|
b397c19fe466
[gaim-migrate @ 4272]
Herman Bloggs <herman@bluedigits.com>
parents:
3713
diff
changeset
|
27 | |
|
b397c19fe466
[gaim-migrate @ 4272]
Herman Bloggs <herman@bluedigits.com>
parents:
3713
diff
changeset
|
28 | printf("File in DATADIR is: %s\n", DATADIR G_DIR_SEPARATOR_S "pic.png"); |
|
b397c19fe466
[gaim-migrate @ 4272]
Herman Bloggs <herman@bluedigits.com>
parents:
3713
diff
changeset
|
29 | |
|
b397c19fe466
[gaim-migrate @ 4272]
Herman Bloggs <herman@bluedigits.com>
parents:
3713
diff
changeset
|
30 | it should be: |
|
b397c19fe466
[gaim-migrate @ 4272]
Herman Bloggs <herman@bluedigits.com>
parents:
3713
diff
changeset
|
31 | |
|
b397c19fe466
[gaim-migrate @ 4272]
Herman Bloggs <herman@bluedigits.com>
parents:
3713
diff
changeset
|
32 | printf("File in DATADIR is: %s%s%s\n", DATADIR, G_DIR_SEPARATOR_S, "pic.png"); |
|
b397c19fe466
[gaim-migrate @ 4272]
Herman Bloggs <herman@bluedigits.com>
parents:
3713
diff
changeset
|
33 | |
|
5338
03c096de0dea
[gaim-migrate @ 5714]
Herman Bloggs <herman@bluedigits.com>
parents:
4482
diff
changeset
|
34 | - When writing out paths to .gaimrc, use wgaim_escape_dirsep. This is necessary |
|
03c096de0dea
[gaim-migrate @ 5714]
Herman Bloggs <herman@bluedigits.com>
parents:
4482
diff
changeset
|
35 | because the Windows dir separator '\' is being used to escape characters, when |
|
03c096de0dea
[gaim-migrate @ 5714]
Herman Bloggs <herman@bluedigits.com>
parents:
4482
diff
changeset
|
36 | paths are read in from the .gaimrc file. |
|
03c096de0dea
[gaim-migrate @ 5714]
Herman Bloggs <herman@bluedigits.com>
parents:
4482
diff
changeset
|
37 | |
| 3630 | 38 | PLUGINS & PROTOS |
| 39 | ---------------- | |
| 40 | ||
| 41 | - G_MODULE_EXPORT all functions which are to be accessed from outside the | |
| 42 | scope of its "dll" or "so". (E.G. gaim_plugin_init) | |
| 43 | ||
| 44 | - G_MODULE_IMPORT all global variables which are located outside your | |
| 45 | dynamic library. (E.G. connections) | |
| 46 | ||
| 47 | (Not doing this will cause "Memory Access Violations" in Win32) |