OSDN Git Service

SDL_atomic_t サンプルコードを修正 https://wiki.libsdl.org/SDL_atomic_t?action=diff&rev1=3&rev2=4
[sdl2referencejp/sdl2referencejp.git] / SDL_CreateCursor.html
index e857fbc..ed51ba8 100644 (file)
@@ -13,7 +13,6 @@
 <hr>\r
 <h1>SDL_CreateCursor</h1>\r
 \8ew\92è\82Ì\83r\83b\83g\83}\83b\83v\83f\81[\83^\82Æ\83}\83X\83N(MSB\8c`\8e®)\82©\82ç\83}\83E\83X\83J\81[\83\\83\8b\82ð\90\90¬\82·\82é\r
-(\92\8d\88Ó: SDL2.0.0\88È\8d~\82Å\82Í<a href="SDL_CreateSystemCursor.html">SDL_CreateSystemCursor()</a>\82ª\8eg\82¦\82é. \82±\82Ì\8aÖ\90\94\82ð\8eg\82¦\82Î11\82Ì\83V\83X\83e\83\80\83J\81[\83\\83\8b\82©\82ç\91I\82×\82é.)\r
 <h2>\8d\\95¶</h2>\r
 <code>SDL_Cursor* SDL_CreateCursor(const Uint8* data, const Uint8* mask, int w, int h, int hot_x, int hot_y)</code>\r
 <h2>\88ø\90\94</h2>\r
 <tr><td>mask</td><td>\83J\81[\83\\83\8b\82Ì\8f\91\82­\83s\83N\83Z\83\8b\82Ì\83}\83X\83N (\8fÚ\8d×\82ð\8eQ\8fÆ\82·\82é\82±\82Æ)</td></tr>\r
 <tr><td>w</td><td>\83J\81[\83\\83\8b\82Ì\95\9d (\8fÚ\8d×\82ð\8eQ\8fÆ\82·\82é\82±\82Æ)</td></tr>\r
 <tr><td>h</td><td>\83J\81[\83\\83\8b\82Ì\8d\82\82³ (w\82Æ\93¯\82¶?)</td></tr>\r
-<tr><td>hot_x</td><td>\83J\81[\83\\83\8b\82Ì\8d\8fã\82Ì\8eÀ\8dÛ\82Ì\83J\81[\83\\83\8b\82©\82ç\82Ì\91\8a\91Î\88Ê\92u\82ÌX\8dÀ\95W???</td></tr>\r
-<tr><td>hot_y</td><td>\83J\81[\83\\83\8b\82Ì\8d\8fã\82Ì\8eÀ\8dÛ\82Ì\83J\81[\83\\83\8b\82©\82ç\82Ì\91\8a\91Î\88Ê\92u\82ÌY\8dÀ\95W???</td></tr>\r
+<tr><td>hot_x</td><td>\83J\81[\83\\83\8b\82Ì\8d\8fã\82Ì\8eÀ\8dÛ\82Ì\83J\81[\83\\83\8b\82©\82ç\82Ì\91\8a\91Î\88Ê\92u\82ÌX\8dÀ\95W</td></tr>\r
+<tr><td>hot_y</td><td>\83J\81[\83\\83\8b\82Ì\8d\8fã\82Ì\8eÀ\8dÛ\82Ì\83J\81[\83\\83\8b\82©\82ç\82Ì\91\8a\91Î\88Ê\92u\82ÌY\8dÀ\95W</td></tr>\r
 </table>\r
 <h2>\96ß\82è\92l</h2>\r
 \90¬\8c÷\82Ì\82Æ\82«\8ew\92è\82Ì\88ø\90\94\82Å\90V\82µ\82­\90\90¬\82³\82ê\82½\83J\81[\83\\83\8b\8e¸\94s\82Ì\82Æ\82«NULL\82ð\96ß\82·.\r
 <a href="SDL_GetError.html">SDL_GetError()</a>\82Å\8fÚ\8d×\82ð\92m\82é\82±\82Æ\82ª\82Å\82«\82é.\r
+<h2>\83T\83\93\83v\83\8b\83R\81[\83h</h2>\r
+<p>\r
+<code>\r
+<pre>\r
+/* \83\81\81[\83\8a\83\93\83O\83\8a\83X\83g\82©\82ç\94q\8eØ */\r
+/* XPM\82©\82ç\90V\82µ\82¢\83}\83E\83X\83J\81[\83\\83\8b\82ð\90\90¬\82·\82é */\r
+\r
+\r
+/* XPM */\r
+static const char *arrow[] = {\r
+  /* width height num_colors chars_per_pixel */\r
+  "    32    32        3            1",\r
+  /* colors */\r
+  "X c #000000",\r
+  ". c #ffffff",\r
+  "  c None",\r
+  /* pixels */\r
+  "X                               ",\r
+  "XX                              ",\r
+  "X.X                             ",\r
+  "X..X                            ",\r
+  "X...X                           ",\r
+  "X....X                          ",\r
+  "X.....X                         ",\r
+  "X......X                        ",\r
+  "X.......X                       ",\r
+  "X........X                      ",\r
+  "X.....XXXXX                     ",\r
+  "X..X..X                         ",\r
+  "X.X X..X                        ",\r
+  "XX  X..X                        ",\r
+  "X    X..X                       ",\r
+  "     X..X                       ",\r
+  "      X..X                      ",\r
+  "      X..X                      ",\r
+  "       XX                       ",\r
+  "                                ",\r
+  "                                ",\r
+  "                                ",\r
+  "                                ",\r
+  "                                ",\r
+  "                                ",\r
+  "                                ",\r
+  "                                ",\r
+  "                                ",\r
+  "                                ",\r
+  "                                ",\r
+  "                                ",\r
+  "                                ",\r
+  "0,0"\r
+};\r
+\r
+static SDL_Cursor *init_system_cursor(const char *image[])\r
+{\r
+  int i, row, col;\r
+  Uint8 data[4*32];\r
+  Uint8 mask[4*32];\r
+  int hot_x, hot_y;\r
+\r
+  i = -1;\r
+  for (row=0; row&lt;32; ++row) {\r
+    for (col=0; col&lt;32; ++col) {\r
+      if (col % 8) {\r
+        data[i] &lt;&lt;= 1;\r
+        mask[i] &lt;&lt;= 1;\r
+      } else {\r
+        ++i;\r
+        data[i] = mask[i] = 0;\r
+      }\r
+      switch (image[4+row][col]) {\r
+        case 'X':\r
+          data[i] |= 0x01;\r
+          mask[i] |= 0x01;\r
+          break;\r
+        case '.':\r
+          mask[i] |= 0x01;\r
+          break;\r
+        case ' ':\r
+          break;\r
+      }\r
+    }\r
+  }\r
+  sscanf(image[4+row], "%d,%d", &amp;hot_x, &amp;hot_y);\r
+  return SDL_CreateCursor(data, mask, 32, 32, hot_x, hot_y);\r
+}\r
+</pre>\r
+</code>\r
+</p>\r
 <h2>\8fÚ\8d×</h2>\r
 <p>\r
+mask\82ÍMSB\8c`\8e®\82Å\82 \82é.\r
+</p>\r
+<p>\r
 \83J\81[\83\\83\8b\82Ì\95\9d(w)\82Í8\82Ì\94{\90\94\82Ì\95K\97v\82ª\82 \82é.\r
 </p>\r
 <p>\r
 <p>\r
 \90F\82Ì\82Â\82¢\82½\83J\81[\83\\83\8b\82ª\95K\97v\82È\82ç\82Î, \82±\82Ì\8aÖ\90\94\82Í\8cü\82¢\82Ä\82¢\82È\82¢.\r
 \91ã\82í\82è\82É, \92Ê\8fí\82Ì\83J\81[\83\\83\8b\82ð<a href="SDL_ShowCursor.html">SDL_ShowCursor()</a>\82Å\89B\82µ, \83\81\83C\83\93\83\8b\81[\83v\82Å<a href="SDL_Surface.html">SDL_Surface()</a>\82ð\83J\81[\83\\83\8b\82Ì\88Ê\92u\82É\95`\82­\95K\97v\82ª\82 \82é.\r
-(\96ó\8eÒ\92\8d\82±\82ê\82Í\8cÃ\82¢\90à\96¾\82Å, <a href="SDL_CreateColorCursor.html">SDL_CreateColorCursor()</a>\82ð\8eg\82¦\82Î\89Â\94\\82È\82Í\82¸.)\r
+</p>\r
+<p>\r
+\82Ü\82½\82Í, <a href="SDL_CreateColorCursor.html">SDL_CreateColorCursor()</a>\82ð\8eg\82Á\82Ä\82à\82æ\82¢.\r
+</p>\r
+<p>\r
+SDL 2.0.0\88È\8d~\82Å\82Í<a href="SDL_CreateSystemCursor.html">SDL_CreateSystemCursor()</a>\82Å\8aù\82É\82 \82é11\82Ì\83V\83X\83e\83\80\83J\81[\83\\83\8b\82ª\8eg\82¦\82é.\r
 </p>\r
 <h2>\8aÖ\98A\8d\80\96Ú(\8aÖ\90\94)</h2>\r
 <a href="SDL_FreeCursor.html">SDL_FreeCursor</a><br>\r