OSDN Git Service

add edit menu handling.
authorornse01 <ornse01@users.sourceforge.jp>
Sat, 5 May 2012 12:46:09 +0000 (12:46 +0000)
committerornse01 <ornse01@users.sourceforge.jp>
Sat, 5 May 2012 12:46:09 +0000 (12:46 +0000)
git-svn-id: http://svn.sourceforge.jp/svnroot/bchan/bchanl/trunk@473 20a0b8eb-f62a-4a12-8fe1-b598822500fb

src/bchanl_menus.c
src/bchanl_menus.h
src/main.c

index 8eebcda..f740389 100644 (file)
@@ -43,7 +43,7 @@
 #define BCHANL_MAINMENU_ITEMNUM_WINDOW 5
 #define BCHANL_MAINMENU_ITEMNUM_GADGET (BCHANL_MAINMENU_ITEMNUM_WINDOW + 1)
 
-EXPORT W bchanl_mainmenu_setup(bchanl_mainmenu_t *mainmenu, Bool subectjoptionenable, Bool extbbsmanageropen, Bool extbbsselected)
+EXPORT W bchanl_mainmenu_setup(bchanl_mainmenu_t *mainmenu, Bool subectjoptionenable, Bool extbbsmanageropen, Bool extbbsselected, Bool fromtray, Bool totray)
 {
        /* [ɽ¼¨] -> [¥¹¥ì°ìÍ÷ÀßÄê] */
        if (subectjoptionenable == False) {
@@ -52,6 +52,25 @@ EXPORT W bchanl_mainmenu_setup(bchanl_mainmenu_t *mainmenu, Bool subectjoptionen
                mchg_atr(mainmenu->mnid, (1 << 8)|2, M_SEL);
        }
 
+       /* [ÊÔ½¸] -> [¥È¥ì¡¼¤«¤é*] */
+       if (fromtray == False) {
+               mchg_atr(mainmenu->mnid, (2 << 8)|2, M_INACT);
+               mchg_atr(mainmenu->mnid, (2 << 8)|4, M_INACT);
+               mchg_atr(mainmenu->mnid, (2 << 8)|5, M_INACT);
+       } else {
+               mchg_atr(mainmenu->mnid, (2 << 8)|2, M_ACT);
+               mchg_atr(mainmenu->mnid, (2 << 8)|4, M_ACT);
+               mchg_atr(mainmenu->mnid, (2 << 8)|5, M_ACT);
+       }
+       /* [ÊÔ½¸] -> [¥È¥ì¡¼¤Ø*] */
+       if (totray == False) {
+               mchg_atr(mainmenu->mnid, (2 << 8)|1, M_INACT);
+               mchg_atr(mainmenu->mnid, (2 << 8)|3, M_INACT);
+       } else {
+               mchg_atr(mainmenu->mnid, (2 << 8)|1, M_ACT);
+               mchg_atr(mainmenu->mnid, (2 << 8)|3, M_ACT);
+       }
+
        /* [³°ÉôÈÄ] -> [³°ÉôÈÄ´ÉÍý] */
        if (extbbsmanageropen == False) {
                mchg_atr(mainmenu->mnid, (4 << 8)|1, M_NOSEL);
@@ -107,6 +126,28 @@ LOCAL W bchanl_mainmenu_select(bchanl_mainmenu_t *mainmenu, W i)
                        break;
                }
                break;
+       case 2: /* [ÊÔ½¸] */
+               switch (i & 0xff) {
+               case 1: /* [¥È¥ì¡¼¤ØÊ£¼Ì] */
+                       ret = BCHANL_MAINMENU_SELECT_EDIT_COPY_TO_TRAY;
+                       break;
+               case 2: /* [¥È¥ì¡¼¤«¤éÊ£¼Ì] */
+                       ret = BCHANL_MAINMENU_SELECT_EDIT_COPY_FROM_TRAY;
+                       break;
+               case 3: /* [¥È¥ì¡¼¤Ø°ÜÆ°] */
+                       ret = BCHANL_MAINMENU_SELECT_EDIT_MOVE_TO_TRAY;
+                       break;
+               case 4: /* [¥È¥ì¡¼¤«¤é°ÜÆ°] */
+                       ret = BCHANL_MAINMENU_SELECT_EDIT_MOVE_FROM_TRAY;
+                       break;
+               case 5: /* [ºï½ü] */
+                       ret = BCHANL_MAINMENU_SELECT_EDIT_DELETE;
+                       break;
+               default:
+                       ret = BCHANL_MAINMENU_SELECT_NOSELECT;
+                       break;
+               }
+               break;
        case 3: /* [Áàºî] */
                switch (i & 0xff) {
                case 1: /* [ÈÄ°ìÍ÷ºÆ¼èÆÀ] */
index d5e2693..7dfd62b 100644 (file)
@@ -38,7 +38,7 @@ typedef struct bchanl_mainmenu_t_ bchanl_mainmenu_t;
 
 IMPORT W bchanl_mainmenu_initialize(bchanl_mainmenu_t *mainmenu, W dnum);
 IMPORT VOID bchanl_mainmenu_finalize(bchanl_mainmenu_t *mainmenu);
-IMPORT W bchanl_mainmenu_setup(bchanl_mainmenu_t *mainmenu, Bool subectjoptionenable, Bool extbbsmanageropen, Bool extbbsselected);
+IMPORT W bchanl_mainmenu_setup(bchanl_mainmenu_t *mainmenu, Bool subectjoptionenable, Bool extbbsmanageropen, Bool extbbsselected, Bool fromtray, Bool totray);
 #define BCHANL_MAINMENU_SELECT_NOSELECT 0
 #define BCHANL_MAINMENU_SELECT_CLOSE 1
 #define BCHANL_MAINMENU_SELECT_REDISPLAY 2
@@ -49,6 +49,11 @@ IMPORT W bchanl_mainmenu_setup(bchanl_mainmenu_t *mainmenu, Bool subectjoptionen
 #define BCHANL_MAINMENU_SELECT_EXTBBS_UP 7
 #define BCHANL_MAINMENU_SELECT_EXTBBS_DOWN 8
 #define BCHANL_MAINMENU_SELECT_EXTBBS_DELETE 9
+#define BCHANL_MAINMENU_SELECT_EDIT_COPY_TO_TRAY 10
+#define BCHANL_MAINMENU_SELECT_EDIT_COPY_FROM_TRAY 11
+#define BCHANL_MAINMENU_SELECT_EDIT_MOVE_TO_TRAY 12
+#define BCHANL_MAINMENU_SELECT_EDIT_MOVE_FROM_TRAY 13
+#define BCHANL_MAINMENU_SELECT_EDIT_DELETE 14
 IMPORT W bchanl_mainmenu_popup(bchanl_mainmenu_t *mainmenu, PNT pos);
 IMPORT W bchanl_mainmenu_keyselect(bchanl_mainmenu_t *mainmenu, TC keycode);
 
index 88b74b6..8aaab59 100644 (file)
@@ -1440,7 +1440,7 @@ LOCAL VOID bchanl_setupmenu(bchanl_t *bchanl)
                }
        }
 
-       bchanl_mainmenu_setup(&bchanl->mainmenu, isopen, isopen_extbbs, selected);
+       bchanl_mainmenu_setup(&bchanl->mainmenu, isopen, isopen_extbbs, selected, False, False);
 }
 
 LOCAL VOID bchanl_selectmenu(bchanl_t *bchanl, W sel)