It may still be a bit cool to wear shorts in April, especially in the evening when it may drop to about 12C, though likely to be warm enough some days. Some restaraunts and hotel dining rooms say no beach shorts though you may be OK with more formal shorts. You should take some long trousers/ jeans anyway.
The cost of drinks varies considerably from place to place. Typically it's around 2 or 3 euros for a pint of beer and around 6 euros for a bottle of local budget or house wine. There are places where you can get a pint of beer for a euro and conversely some places will charge 4 euros or more depending on the setting. Many restaraunts will offer better wines from around 14 euros a bottle.
A meal for two would be say 30 or 40 euros, but again it depends what you eat and where. More up market places it may be say 25 or 30 euros a head for two courses. There are a few menus online that you could take a look at.
Here are a few at random;